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

ConcurrentModificationException in nodetool upgradesstables

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Normal
    • Resolution: Fixed
    • None
    • None
    • None
    • Cassandra 3.11 on Linux

    • Normal

    Description

      When upgrading from 2.2.8 to Cassandra 3.11 we were able to upgrade all other sstables except 1 file on 3 nodes (out of 4). Those are related to 2 different tables.

      Upgrading sstables fails with ConcurrentModificationException.

      $ nodetool upgradesstables
      error: null
      -- StackTrace --
      java.util.ConcurrentModificationException
      	at java.util.TreeMap$PrivateEntryIterator.nextEntry(TreeMap.java:1211)
      	at java.util.TreeMap$KeyIterator.next(TreeMap.java:1265)
      	at org.apache.cassandra.utils.StreamingHistogram.flushHistogram(StreamingHistogram.java:168)
      	at org.apache.cassandra.utils.StreamingHistogram.update(StreamingHistogram.java:124)
      	at org.apache.cassandra.utils.StreamingHistogram.update(StreamingHistogram.java:96)
      	at org.apache.cassandra.io.sstable.metadata.MetadataCollector.updateLocalDeletionTime(MetadataCollector.java:209)
      	at org.apache.cassandra.io.sstable.metadata.MetadataCollector.update(MetadataCollector.java:182)
      	at org.apache.cassandra.db.rows.Cells.collectStats(Cells.java:44)
      	at org.apache.cassandra.db.rows.Rows.lambda$collectStats$0(Rows.java:102)
      	at org.apache.cassandra.utils.btree.BTree.applyForwards(BTree.java:1242)
      	at org.apache.cassandra.utils.btree.BTree.apply(BTree.java:1197)
      	at org.apache.cassandra.db.rows.BTreeRow.apply(BTreeRow.java:172)
      	at org.apache.cassandra.db.rows.Rows.collectStats(Rows.java:97)
      	at org.apache.cassandra.io.sstable.format.big.BigTableWriter$StatsCollector.applyToRow(BigTableWriter.java:237)
      	at org.apache.cassandra.db.transform.BaseRows.hasNext(BaseRows.java:141)
      	at org.apache.cassandra.db.ColumnIndex.buildRowIndex(ColumnIndex.java:110)
      	at org.apache.cassandra.io.sstable.format.big.BigTableWriter.append(BigTableWriter.java:173)
      	at org.apache.cassandra.io.sstable.SSTableRewriter.append(SSTableRewriter.java:135)
      	at org.apache.cassandra.db.compaction.writers.DefaultCompactionWriter.realAppend(DefaultCompactionWriter.java:65)
      	at org.apache.cassandra.db.compaction.writers.CompactionAwareWriter.append(CompactionAwareWriter.java:141)
      	at org.apache.cassandra.db.compaction.CompactionTask.runMayThrow(CompactionTask.java:201)
      	at org.apache.cassandra.utils.WrappedRunnable.run(WrappedRunnable.java:28)
      	at org.apache.cassandra.db.compaction.CompactionTask.executeInternal(CompactionTask.java:85)
      	at org.apache.cassandra.db.compaction.AbstractCompactionTask.execute(AbstractCompactionTask.java:61)
      	at org.apache.cassandra.db.compaction.CompactionManager$5.execute(CompactionManager.java:428)
      	at org.apache.cassandra.db.compaction.CompactionManager$2.call(CompactionManager.java:315)
      	at java.util.concurrent.FutureTask.run(FutureTask.java:266)
      	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:1142)
      	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
      	at org.apache.cassandra.concurrent.NamedThreadFactory.lambda$threadLocalDeallocator$0(NamedThreadFactory.java:81)
      	at java.lang.Thread.run(Thread.java:745)
      

      Attachments

        Issue Links

          Activity

            People

              jjirsa Jeff Jirsa
              hkroger Hannu Kröger
              Jeff Jirsa
              Votes:
              0 Vote for this issue
              Watchers:
              5 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: