You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@cassandra.apache.org by Dave Viner <da...@gmail.com> on 2011/01/11 18:59:18 UTC

upgrading to 0.7 from 0.6.x

Hi all,

I'm reading the upgrading notes in the NEWS.txt file, but I don't see
how/where the data from the 0.6 cluster is actually migrated.

Current, in the file, it says:

The process to upgrade is:
    1) run "nodetool drain" on _each_ 0.6 node.  When drain finishes (log
       message "Node is drained" appears), stop the process.
    2) Convert your storage-conf.xml to the new cassandra.yaml using
       "bin/config-converter".
    3) Rename any of your keyspace or column family names that do not adhere
       to the '^\w+' regex convention.
    4) Start up your cluster with the 0.7 version.
    5) Initialize your Keyspace and ColumnFamily definitions using
       "bin/schematool <host> <jmxport> import".  _You only need to do
       this to one node_.

I assume the instructions in step 5 refer to new 0.7 node, not the 0.6 node.


Is the idea to install 0.7 alongside the 0.6 instance or to replace
the entire machine/node with a new node running 0.7?  If so, is there
a step 1b, which is "install 0.7 code & executables" ?


Thanks

Dave Viner

Re: upgrading to 0.7 from 0.6.x

Posted by Peter Schuller <pe...@infidyne.com>.
> The process to upgrade is:
>     1) run "nodetool drain" on _each_ 0.6 node.  When drain finishes (log
>        message "Node is drained" appears), stop the process.
>     2) Convert your storage-conf.xml to the new cassandra.yaml using
>        "bin/config-converter".
>     3) Rename any of your keyspace or column family names that do not adhere
>        to the '^\w+' regex convention.
>     4) Start up your cluster with the 0.7 version.
>     5) Initialize your Keyspace and ColumnFamily definitions using
>        "bin/schematool <host> <jmxport> import".  _You only need to do
>        this to one node_.
>
> I assume the instructions in step 5 refer to new 0.7 node, not the 0.6 node.
>
> Is the idea to install 0.7 alongside the 0.6 instance or to replace the
> entire machine/node with a new node running 0.7?  If so, is there a step 1b,
> which is "install 0.7 code & executables" ?

As a disclaimer, note that I have not actually tested a 0.6->0.7
migration, but: The idea is that you start the new 0.7 node with the
converted configuration, using the same data directories etc. This
should not result in pre-existing data being touched. Then, once you
submit the new schema (the new schema being a match for the schema
that you actually had in 0.6) the data will be available again. I.e.,
the moment the schema is created it is essentially created
pre-populated with your sstables instead of empty.

-- 
/ Peter Schuller