Uploaded image for project: 'Jackrabbit Oak'
  1. Jackrabbit Oak
  2. OAK-4808 Index external changes as part of NRT indexing
  3. OAK-5430

Provide an extension point in DocumentNodeStore Journal support

    XMLWordPrintableJSON

    Details

    • Type: Technical task
    • Status: Closed
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: 1.5.18, 1.6.0
    • Component/s: documentmk
    • Labels:
      None

      Description

      As discussed in OAK-4808 B1 I would like to expose an extension point in form of SPI in DocumentNodeStore Journal handling.

      Each component which needs to add a custom property to JournalEntry would provide a JournalPropertyService. This service would provide a JournalPropertyBuilder which would be used to accumulate the JournalProperty

      1. For background write - JournalProperty would be read from CommitInfo and would be added to the builder. Upon background write cycle the builder would provide a string representation of the builder state which would be save as a property in JournalEntry
      2. For background read - DocumentNodeStore would create builder for each service and would update them from string property value which are read from the JournalEntry

      DocumentNodeStore would lookup all JournalPropertyService via JournalPropertyServiceTracker and construct a JournalPropertyHandler which would manage the builder state

        Attachments

        1. OAK-5430-v1.diff
          36 kB
          Chetan Mehrotra

          Issue Links

            Activity

              People

              • Assignee:
                chetanm Chetan Mehrotra
                Reporter:
                chetanm Chetan Mehrotra
              • Votes:
                0 Vote for this issue
                Watchers:
                3 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: