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

NullPointerException by staging move between two blob stores

    XMLWordPrintable

    Details

    • Type: Bug
    • Status: New
    • Priority: Major
    • Resolution: Unresolved
    • Affects Version/s: 3.29.2
    • Fix Version/s: None
    • Component/s: Staging
    • Labels:
    • Notability:
      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

            Assignee:
            Unassigned Unassigned
            Reporter:
            hosako Hajime Osako
            Last Updated By:
            Rich Seddon Rich Seddon
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Dates

              Created:
              Updated:
              Date of First Response:

                tigCommentSecurity.panel-title