Uploaded image for project: 'Jackrabbit Oak'
  1. Jackrabbit Oak
  2. OAK-4970

Sidegrade disk usage issues related to copying version storage

    XMLWordPrintableJSON

    Details

    • Type: Improvement
    • Status: Closed
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: 1.4.12, 1.5.13, 1.6.0
    • Component/s: upgrade
    • Labels:
      None

      Description

      Following performance improvements are possible in the sidegrade:

      • if the parameters related to copying versions are not used, we can copy the version storage as-is and skip the VersionableEditor,
      • inside the VersionableEditor we should check whether the versionable path already exists:
        --- oak-upgrade/src/main/java/org/apache/jackrabbit/oak/upgrade/version/VersionableEditor.java
        +++ oak-upgrade/src/main/java/org/apache/jackrabbit/oak/upgrade/version/VersionableEditor.java
        @@ -163,7 +163,9 @@
         
             private void setVersionablePath(String versionableUuid) {
                 final NodeBuilder versionHistory = VersionHistoryUtil.getVersionHistoryBuilder(versionStorage, versionableUuid);
        -        versionHistory.setProperty(provider.workspaceName, path, Type.PATH);
        +        if (!versionHistory.hasProperty(provider.workspaceName)) {
        +            versionHistory.setProperty(provider.workspaceName, path, Type.PATH);
        +        }
                 addMixin(versionHistory, MIX_REP_VERSIONABLE_PATHS);
             }
        
      • the workspace name itself should be derived from the source repository (or should be configurable).

      // cc: Michael Dürig

        Attachments

          Issue Links

            Activity

              People

              • Assignee:
                Unassigned
                Reporter:
                tomek.rekawek Tomek Rękawek
              • Votes:
                0 Vote for this issue
                Watchers:
                4 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: