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

Bug in index definition can block indexing / cause indexing in a loop

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Fixed
    • None
    • 1.18.0
    • core, lucene

    Description

      If we  set "/oak:index/indexName/entryCount" to a Long multi-valued property. That will cause the system to reindex in a loop... You only see the root cause if debug level logging is enabled. There are likely other such problems. Oak should log a proper meaningful exception for config errors, and if possible not get into this loop. It also blocks other indexes to be updated I think.

       

       

      29.03.2019 11:58:55.688 *INFO* [async-index-update-async] org.apache.jackrabbit.oak.plugins.index.IndexUpdate Reindexing will be performed for following indexes: [/oak:index/unifiedCreatedLucene]
      29.03.2019 11:59:00.691 *INFO* [async-index-update-async] org.apache.jackrabbit.oak.plugins.index.IndexUpdate Reindexing will be performed for following indexes: [/oak:index/unifiedCreatedLucene]
      29.03.2019 11:59:05.685 *INFO* [async-index-update-async] org.apache.jackrabbit.oak.plugins.index.IndexUpdate Reindexing will be performed for following indexes: [/oak:index/unifiedCreatedLucene]
      29.03.2019 11:59:10.687 *INFO* [async-index-update-async] org.apache.jackrabbit.oak.plugins.index.IndexUpdate Reindexing will be performed for following indexes: [/oak:index/unifiedCreatedLucene]
      29.03.2019 11:59:15.685 *INFO* [async-index-update-async] org.apache.jackrabbit.oak.plugins.index.IndexUpdate Reindexing will be performed for following indexes: [/oak:index/unifiedCreatedLucene]
      29.03.2019 11:59:20.688 *INFO* [async-index-update-async] org.apache.jackrabbit.oak.plugins.index.IndexUpdate Reindexing will be performed for following indexes: [/oak:index/unifiedCreatedLucene]
      
      29.03.2019 12:13:50.692 *DEBUG* [async-index-update-async] org.apache.jackrabbit.oak.plugins.index.AsyncIndexUpdate [async] The index update is still failing
      java.lang.IllegalStateException: null
      	at com.google.common.base.Preconditions.checkState(Preconditions.java:134)
      	at org.apache.jackrabbit.oak.segment.SegmentPropertyState.getValue(SegmentPropertyState.java:145)
      	at org.apache.jackrabbit.oak.plugins.index.lucene.IndexDefinition.<init>(IndexDefinition.java:358)
      	at org.apache.jackrabbit.oak.plugins.index.lucene.IndexDefinition.<init>(IndexDefinition.java:95)
      	at org.apache.jackrabbit.oak.plugins.index.lucene.IndexDefinition$Builder.build(IndexDefinition.java:314)
      	at org.apache.jackrabbit.oak.plugins.index.lucene.LuceneIndexEditorContext.enableReindexMode(LuceneIndexEditorContext.java:184)
      	at org.apache.jackrabbit.oak.plugins.index.lucene.LuceneIndexEditor.enter(LuceneIndexEditor.java:118)
      	at org.apache.jackrabbit.oak.spi.commit.ProgressNotificationEditor.enter(ProgressNotificationEditor.java:71)
      

      Attachments

        1. OAK-8328.patch
          8 kB
          Nitin Gupta
        2. OAK-8328_test.patch
          6 kB
          Nitin Gupta
        3. OAK-8328_3.patch
          24 kB
          Thomas Mueller
        4. OAK-8328_2.patch
          16 kB
          Nitin Gupta

        Issue Links

          Activity

            People

              thomasm Thomas Mueller
              ngupta Nitin Gupta
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: