[ 
https://issues.apache.org/jira/browse/CASSANDRA-2739?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13070633#comment-13070633
 ] 

Sylvain Lebresne commented on CASSANDRA-2739:
---------------------------------------------

bq. Are the steps above correct?

No. The current limitation is that when upgrading from 0.7 to 0.8, you cannot 
do something related to streaming (bootstrap, repair, decommission) with a 
mixed 0.7-0.8 cluster (more precisely, you could do some of those if the right 
node has the right version, but you're never guaranteed it will work) and until 
all sstables on the new 0.8 node have been converted to the new format.

The correct steps are:
# upgrade all node to 0.8. The all here doesn't mean all at once, it can be a 
rolling upgrade, but it means that streaming operation during that step may 
fail.
# run 'nodetool scrub' on all the node after the upgrade. The definition for 
all is the same than previously.

After those step, you should not get the error message anymore (otherwise, it 
is an unknown bug).

We will try to make it so that the second stop (the scrub part) is not 
necessary in the future but it is necessary for now. 

> 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

        

Reply via email to