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

    • Bug
    • Status: Closed
    • Minor
    • Resolution: Fixed
    • None
    • 1.5.16, 1.6.0
    • lucene
    • 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

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

              Dates

                Created:
                Updated:
                Resolved: