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

Merging Incremental Store failure: Operations, delete a node and adding node again is dumped as added node

    XMLWordPrintableJSON

Details

    • Improvement
    • Status: Open
    • Major
    • Resolution: Unresolved
    • None
    • None
    • indexing
    • None

    Description

      We found following error while merging incrementalFFS.

      wrong operand in incremental ffs: operand:A, line:/content/dam/x.png|{"jcr:created":"dat:2023-11-01T18:44:11.939Z","jcr:createdBy":"writer-service","jcr:primaryType":"nam:nt:file"}|r18b8d649933-0-2|A

      This stems from https://github.com/apache/jackrabbit-oak/blob/trunk/oak-run-commons/src/main/java/org/apache/jackrabbit/oak/index/indexer/document/incrementalstore/MergeIncrementalFlatFileStore.java#L136

      where the merger expects the operand to be "M" or "D" but finds it to be "A" for the particular case.

       

      The case is - 

      Between 2 checkpoints: 

      r18b8c0cc329-0-2:2023-11-01T18:02:08.553 UTC
      r18b8d5744b1-0-2:2023-11-02T00:03:08.593 UTC

      Node is first deleted and then again added at same path. These operations are taken picked as new node added instead of node modified.

      Following section of mongo document proves this.

      "_deleted" :
      { "r18b8c3316f7-0-3" : "true", "r18b8c334443-0-1" : "false" }
       
      

       

      Attachments

        Activity

          People

            mkataria Mohit Kataria
            mkataria Mohit Kataria
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

              Created:
              Updated: