Details

    • Type: Sub-task
    • Status: Closed
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: 3.15.0
    • Component/s: None
    • Labels:
      None

      Description

      Npm has a concept of "revision number" which is inserted into the package root and is used when deleting, the client passes up the current revision number and if the package root in NXRM is at a different revision then an exception is thrown. Currently our implementation uses the Orient Document Version number as a revision number for the package root and dynamically inserts this every time the package root is fetched. The problem with this is the revision number is incremented whenever the database record is updated regardless of whether the contents of the package root (blob) are updated - now that the last downloaded handler is doing an extra save of the database record the revision is one ahead and NpmHostedIT#deletePackage is failing. The database record and file on disk should be treated as two separate concepts.

      Exception thrown here: https://github.com/sonatype/nexus-internal/blob/dfb86e05d2ece85228cc7fd3fe64a55be12469eb/plugins/nexus-repository-npm/src/main/java/org/sonatype/nexus/repository/npm/internal/NpmHostedFacetImpl.java#L285

        Attachments

          Activity

            People

            Assignee:
            jstephens Joseph Stephens
            Reporter:
            jstephens Joseph Stephens
            Last Updated By:
            Peter Lynch Peter Lynch
            Team:
            NXRM - Cypher
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Dates

              Created:
              Updated:
              Resolved:
              Date of First Response:

                tigCommentSecurity.panel-title