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

LuceneIndexEditor skips indexing for unknown nodetype due to stale NodeType registry state

    XMLWordPrintableJSON

    Details

    • Type: Bug
    • Status: Closed
    • Priority: Minor
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: 1.5.16, 1.6.0
    • Component/s: lucene
    • Labels:
      None

      Description

      With OAK-5218 hybrid index can be used since very starting of system. Currently LuceneIndexEditorProvider uses a cached IndexDefinition instance for sync/nrt mode.

      In some cases it can happen that indexed content uses a new nodetype and IndexDefinition which is cached in IndexTracker has yet not updated the cached index definition. This is not a problem with async indexing mode as by the time async indexer kicks in it constructs the IndexDefinition from the current root. However with sync/nrt indexing it posses a problem as nodetype state stored in cached index definition may be old and does not have entry for newly registered nodetypes

      As a fix we should check if NodeType registry state has changed for current root wrt root referred to in IndexDefinition. If changed then cached IndexDefinition should not be used

        Attachments

          Issue Links

            Activity

              People

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

                Dates

                • Created:
                  Updated:
                  Resolved: