Uploaded image for project: '[Read Only] - Hippo Repository'
  1. [Read Only] - Hippo Repository
  2. REPO-1436

Jackrabbit in certain cases can index a Hippo document twice which is bad for performance

    XMLWordPrintable

Details

    • Bug
    • Status: Closed
    • Normal
    • Resolution: Fixed
    • None
    • 4.0.0
    • None
    • None
    • Platform sprint 124

    Description

      Jackrabbit contains code in org.apache.jackrabbit.core.query.lucene.SearchIndex#updateNodes that accounts for making sure that some nodes are re-indexed as a result of a change in another node. This is in the area of

              // remove any aggregateRoot nodes that are new
              // and therefore already up-to-date
              aggregateRoots.keySet().removeAll(addedIds);
      
              // based on removed ids get affected aggregate root nodes
              retrieveAggregateRoot(removedIds, aggregateRoots);
      

      because of our specific Hippo Document indexing however, it can happen that in 'retrieveAggregateRoot', again an id is added to 'aggregateRoots' that has already been added. Therefor we need to change the code above to

              // remove any aggregateRoot nodes that are new
              // and therefore already up-to-date
              aggregateRoots.keySet().removeAll(addedIds);
      
              // based on removed ids get affected aggregate root nodes
              retrieveAggregateRoot(removedIds, aggregateRoots);
      
              // again remove any aggregateRoot nodes that are new
              // and therefore already up-to-date
              aggregateRoots.keySet().removeAll(addedIds);
      

      Attachments

        Issue Links

          Activity

            People

              Unassigned Unassigned
              aschrijvers Ard Schrijvers
              Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: