[
https://issues.apache.org/jira/browse/CASSANDRA-2739?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13043969#comment-13043969
]
Jonathan Ellis commented on CASSANDRA-2739:
-------------------------------------------
bq. run major compactions on all nodes before attempting to decommission again
That won't necessarily fix it (since compaction will ignore single-sstable
CFs), but scrub would.
Really the right fix is to commit to keeping Builder/RowIndexer backwards
compatible, because this will keep coming up otherwise. I think that we may in
fact be fine already since decodeKey / readRowSize / CompactedRow encapsulate
the version knowledge we'd need.
> Cannot recover SSTable with version f (current version g) during the node
> decommission.
> ---------------------------------------------------------------------------------------
>
> Key: CASSANDRA-2739
> URL: https://issues.apache.org/jira/browse/CASSANDRA-2739
> Project: Cassandra
> Issue Type: Bug
> Components: Core
> Affects Versions: 0.8.0
> Environment: centos, cassandra 0.7.4 upgrade to 0.8.0-final.
> Reporter: Dikang Gu
> Labels: decommission, version
>
> I upgrade the 4-nodes cassandra 0.7.4 cluster to 0.8.0-final. Then, I do the
> bin/nodetool decommission on one node, the decommission hangs there and I got
> the following errors on other nodes.
> ERROR [Thread-55] 2011-06-03 18:02:03,500 AbstractCassandraDaemon.java (line
> 113) Fatal exception in thread Thread[Thread-55,5,main]
> java.lang.RuntimeException: Cannot recover SSTable with version f (current
> version g).
> at
> org.apache.cassandra.io.sstable.SSTableWriter.createBuilder(SSTableWriter.java:240)
> at
> org.apache.cassandra.db.CompactionManager.submitSSTableBuild(CompactionManager.java:1088)
> at
> org.apache.cassandra.streaming.StreamInSession.finished(StreamInSession.java:108)
> at
> org.apache.cassandra.streaming.IncomingStreamReader.readFile(IncomingStreamReader.java:104)
> at
> org.apache.cassandra.streaming.IncomingStreamReader.read(IncomingStreamReader.java:61)
> at
> org.apache.cassandra.net.IncomingTcpConnection.stream(IncomingTcpConnection.java:155)
> at
> org.apache.cassandra.net.IncomingTcpConnection.run(IncomingTcpConnection.java:93)
> ERROR [Thread-56] 2011-06-03 18:02:04,285 AbstractCassandraDaemon.java (line
> 113) Fatal exception in thread Thread[Thread-56,5,main]
> java.lang.RuntimeException: Cannot recover SSTable with version f (current
> version g).
> at
> org.apache.cassandra.io.sstable.SSTableWriter.createBuilder(SSTableWriter.java:240)
> at
> org.apache.cassandra.db.CompactionManager.submitSSTableBuild(CompactionManager.java:1088)
> at
> org.apache.cassandra.streaming.StreamInSession.finished(StreamInSession.java:108)
> at
> org.apache.cassandra.streaming.IncomingStreamReader.readFile(IncomingStreamReader.java:104)
> at
> org.apache.cassandra.streaming.IncomingStreamReader.read(IncomingStreamReader.java:61)
> at
> org.apache.cassandra.net.IncomingTcpConnection.stream(IncomingTcpConnection.java:155)
> at
> org.apache.cassandra.net.IncomingTcpConnection.run(IncomingTcpConnection.java:93)
--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira