Uploaded image for project: 'Dev - Nexus Repo'
  1. Dev - Nexus Repo
  2. NEXUS-29353

NullPointerException by staging move between two blob stores

Details

    • Bug
    • Resolution: Unresolved
    • Major
    • None
    • 3.29.2
    • Staging
    • 3

    Description

      SYMPTOM:

      Sometimes executing the Staging API causes the NullPointerException and the API request just fails with 500 status code.

      2021-10-19 05:04:51,757+0200 WARN  [qtp1601050839-95457] Node2 admin org.sonatype.nexus.siesta.internal.UnexpectedExceptionMapper - (ID 98d9d3ff-0edf-495a-a9df-b15fc35db8a3) Unexpected exception: java.lang.NullPointerException
      java.lang.NullPointerException: null
              at com.sonatype.nexus.staging.internal.orient.OrientStagingComponentManager.moveBlob(OrientStagingComponentManager.java:273)
              at com.sonatype.nexus.staging.internal.orient.OrientStagingComponentManager.lambda$5(OrientStagingComponentManager.java:177)
              at java.util.ArrayList.forEach(Unknown Source)
              at com.sonatype.nexus.staging.internal.orient.OrientStagingComponentManager.doMove(OrientStagingComponentManager.java:172)
              at org.sonatype.nexus.transaction.TransactionalWrapper.proceedWithTransaction(TransactionalWrapper.java:57)
              at org.sonatype.nexus.transaction.TransactionInterceptor.proceedWithTransaction(TransactionInterceptor.java:66)
              at org.sonatype.nexus.transaction.TransactionInterceptor.invoke(TransactionInterceptor.java:55)
              at com.sonatype.nexus.staging.internal.orient.OrientStagingComponentManager.move(OrientStagingComponentManager.java:99)
              at com.sonatype.nexus.staging.internal.orient.OrientStagingService.doMove(OrientStagingService.java:408)
              at com.sonatype.nexus.staging.internal.orient.OrientStagingService.move(OrientStagingService.java:191)
      ... (snip) ...
      

      REPRODUCE STEPS:

      Currently the reproduce steps are unknown, but this seems to happen when the source and destination (target) blob store file system is different and/or using remote file system such as NFS.

      EXPECTED BEHAVIOUR:

      The staging API should not just fail in the middle of the move.

      Attachments

        Activity

          People

            Unassigned Unassigned
            hosako Hajime Osako
            Rich Seddon Rich Seddon
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated:

              tigCommentSecurity.panel-title