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

Non-blocking reindexing

    XMLWordPrintableJSON

    Details

    • Type: Improvement
    • Status: Closed
    • Priority: Blocker
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: 0.20
    • Component/s: query

      Description

      For huge Oak repos it will be essential to re-index some or all indexes in case they go out of sync in a non-blocking way (i.e. the repo is still operation while the re-indexing takes place).

      For an asynchronous index this should not be much of a problem. One could drop it and recreate (as an added benefit it might be nice if the user could simply add a property "reindex" to the index definition node to trigger this).

      For synchronous indexes, I suggest the mechanism creates an asynchronous index behind the scenes first and once it has caught up

      • blocks writes
      • removes the existing synchronous index
      • moves asynchronous index in its place and makes it synchronous

        Attachments

        1. OAK-1456.patch
          24 kB
          Alex Deparvu

          Issue Links

            Activity

              People

              • Assignee:
                stillalex Alex Deparvu
                Reporter:
                mmarth Michael Marth
              • Votes:
                0 Vote for this issue
                Watchers:
                3 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: