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

Partial compaction

    XMLWordPrintableJSON

Details

    Description

      On big repositories compaction can take quite a while to run as it needs to create a full deep copy of the current root node state. For such cases it could be beneficial if we could partially compact the repository thus splitting full compaction over multiple cycles.
      Partial compaction would run compaction on a sub-tree just like we now run it on the full tree. Afterwards it would create a new root node state by referencing the previous root node state replacing said sub-tree with the compacted one.

      Todo: Asses feasibility and impact, implement prototype.

      Attachments

        1. post-gc-size.png
          33 kB
          Michael Dürig
        2. cycle-count.png
          36 kB
          Michael Dürig
        3. compaction-time.png
          37 kB
          Michael Dürig

        Issue Links

          Activity

            People

              frm Francesco Mari
              mduerig Michael Dürig
              Votes:
              0 Vote for this issue
              Watchers:
              6 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: