Uploaded image for project: 'Cassandra'
  1. Cassandra
  2. CASSANDRA-16174

During bootstrap streaming, skipping write path may create orphan MV rows

Agile BoardAttach filesAttach ScreenshotAdd voteVotersWatch issueWatchersCreate sub-taskConvert to sub-taskMoveLinkCloneLabelsUpdate Comment AuthorReplace String in CommentUpdate Comment VisibilityDelete Comments


    • Bug
    • Status: Triage Needed
    • Normal
    • Resolution: Unresolved
    • 4.x
    • None
    • Correctness - Recoverable Corruption / Loss
    • Normal
    • Challenging
    • User Report
    • All
    • None


      CASSANDRA-13065 improves the speed of bootstrap streaming by skipping write path for base table with MV.

      Unfortunately during bootstrapping, the bootstrapping node may receive a base write that is already deleted or shadowed on other replicas, but the bootstrapping node didn't receive all sstables yet thus bootstapping node may create an orphan view row based on received sstables. Without write path, the newer version data will not create tombstone to shadow orphan view row.

      For example, node-A has a base sstable containing: "k=1, v=1@2019", but bootstrapping node didn't receive it yet. A write "k=1, v=0@2018" hitting on bootstrapping node will create an orphan view row: "v=0@2018, k=1". Applying streaming sstables from bootstrap or rebuild through write path can help, but that's something we want to get rid of.


        Issue Links


          This comment will be Viewable by All Users Viewable by All Users


            Unassigned Unassigned Assign to me
            jasonstack Zhao Yang



              Issue deployment