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

Sidegrade disk usage issues related to copying version storage

    XMLWordPrintableJSON

Details

    • Improvement
    • Status: Closed
    • Major
    • Resolution: Fixed
    • None
    • 1.4.12, 1.5.13, 1.6.0
    • upgrade
    • 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: mduerig

      Attachments

        Issue Links

          Activity

            People

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

              Dates

                Created:
                Updated:
                Resolved: