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

When 3.0 reads 2.1 data with a regular column set<text> it expects the cellName to contain a element and fails if not true

    XMLWordPrintableJSON

    Details

    • Bug Category:
      Availability - Response Crash
    • Severity:
      Normal
    • Complexity:
      Normal
    • Discovered By:
      Workload Replay
    • Platform:
      All
    • Impacts:
      None

      Description

      java.lang.AssertionError
      	at org.apache.cassandra.db.rows.BufferCell.<init>(BufferCell.java:48)
      	at org.apache.cassandra.db.LegacyLayout$CellGrouper.addCell(LegacyLayout.java:1461)
      	at org.apache.cassandra.db.LegacyLayout$CellGrouper.addAtom(LegacyLayout.java:1380)
      	at org.apache.cassandra.db.UnfilteredDeserializer$OldFormatDeserializer$UnfilteredIterator.readRow(UnfilteredDeserializer.java:549)
      	at org.apache.cassandra.db.UnfilteredDeserializer$OldFormatDeserializer$UnfilteredIterator.hasNext(UnfilteredDeserializer.java:523)
      	at org.apache.cassandra.db.UnfilteredDeserializer$OldFormatDeserializer.hasNext(UnfilteredDeserializer.java:336)
      	at org.apache.cassandra.io.sstable.SSTableSimpleIterator$OldFormatIterator.readStaticRow(SSTableSimpleIterator.java:133)
      	at org.apache.cassandra.io.sstable.SSTableIdentityIterator.<init>(SSTableIdentityIterator.java:59)
      	at org.apache.cassandra.io.sstable.format.big.BigTableScanner$KeyScanningIterator$1.initializeIterator(BigTableScanner.java:364)
      	at org.apache.cassandra.db.rows.LazilyInitializedUnfilteredRowIterator.maybeInit(LazilyInitializedUnfilteredRowIterator.java:48)
      	at org.apache.cassandra.db.rows.LazilyInitializedUnfilteredRowIterator.isReverseOrder(LazilyInitializedUnfilteredRowIterator.java:65)
      	at org.apache.cassandra.db.partitions.UnfilteredPartitionIterators$1.reduce(UnfilteredPartitionIterators.java:132)
      	at org.apache.cassandra.db.partitions.UnfilteredPartitionIterators$1.reduce(UnfilteredPartitionIterators.java:123)
      	at org.apache.cassandra.utils.MergeIterator$ManyToOne.consume(MergeIterator.java:207)
      	at org.apache.cassandra.utils.MergeIterator$ManyToOne.computeNext(MergeIterator.java:160)
      	at org.apache.cassandra.utils.AbstractIterator.hasNext(AbstractIterator.java:47)
      	at org.apache.cassandra.db.partitions.UnfilteredPartitionIterators$2.hasNext(UnfilteredPartitionIterators.java:174)
      	at org.apache.cassandra.db.transform.BasePartitions.hasNext(BasePartitions.java:93)
      	at org.apache.cassandra.db.compaction.CompactionIterator.hasNext(CompactionIterator.java:240)
      	at org.apache.cassandra.db.compaction.CompactionTask.runMayThrow(CompactionTask.java:191)
      	at org.apache.cassandra.utils.WrappedRunnable.run(WrappedRunnable.java:28)
      	at org.apache.cassandra.db.compaction.CompactionTask.executeInternal(CompactionTask.java:89)
      	at org.apache.cassandra.db.compaction.AbstractCompactionTask.execute(AbstractCompactionTask.java:100)
      	at org.apache.cassandra.db.compaction.CompactionManager$BackgroundCompactionCandidate.run(CompactionManager.java:345)
      	at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
      	at java.util.concurrent.FutureTask.run(FutureTask.java:266)
      	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
      	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
      	at org.apache.cassandra.concurrent.NamedThreadFactory.lambda$threadLocalDeallocator$0(NamedThreadFactory.java:83)
      	at java.lang.Thread.run(Thread.java:748)
      

      This exception is similar to other JIRA such as CASSANDRA-14113 but under root causing both exceptions, they only share the same symptom and not the same root cause; hence a new JIRA.

      This was found when a frozen collection was found when a multi-cell collection was expected. When this happened LegacyCellName#collectionElement comes back as null which eventually gets asserted against in BufferCell (complex cell needs a path).

        Attachments

          Activity

            People

            • Assignee:
              dcapwell David Capwell
              Reporter:
              dcapwell David Capwell
              Authors:
              David Capwell
            • Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

              • Created:
                Updated: