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

    • Technical task
    • Status: Closed
    • Major
    • Resolution: Fixed
    • None
    • 1.5.18, 1.6.0
    • documentmk
    • 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

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

              Dates

                Created:
                Updated:
                Resolved: