You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@cassandra.apache.org by andy C <ac...@computing.dundee.ac.uk> on 2010/09/22 10:35:13 UTC

Moving from 0.7.0-beta1 to nightly build

I'm running a test cluster for development and evaluation of Cassandra.  In order to use the latest build of Hector (the 0.7.0 branch) I've need to move from 0.6.5 first to  0.7.0-beta1 of Cassandra and then to the latest nightly build (actually 2010-09-20_14-20-20).  In order to move over I've followed the following procedure:

1: get 0.7.0 running on all nodes, use schematool to update schema
2: confirm with cassandra-cli that the schema looks OK
3: Take down all nodes
4: on one node install nightly build
5:use config-converter to create config from 0.6.5 to nightly config
6: Change RackUnawareStrategy to SimpleStrategy in cassandra.yaml
7: start Cassandra

However I am still getting RackUnawareStrategy exceptions (output below). 

Any ideas on the proper procedure ?
Ta
Andy

 Using adaptive heap size:  1002M
 INFO 09:12:15,962 JNA not found. Native methods will be disabled.
 INFO 09:12:16,200 DiskAccessMode 'auto' determined to be standard, indexAccessMode is standard
 INFO 09:12:16,368 Sampling index for /var/lib/cassandra/data/system/Schema-e-2-<>
 INFO 09:12:16,393 Sampling index for /var/lib/cassandra/data/system/Schema-e-1-<>
 INFO 09:12:16,425 Sampling index for /var/lib/cassandra/data/system/Migrations-e-2-<>
 INFO 09:12:16,427 Sampling index for /var/lib/cassandra/data/system/Migrations-e-1-<>
 INFO 09:12:16,436 Sampling index for /var/lib/cassandra/data/system/LocationInfo-e-9-<>
 INFO 09:12:16,513 Loading schema version 6821232f-c248-11df-bad6-869ef8d6f292
ERROR 09:12:16,866 Exception encountered during startup.
java.lang.RuntimeException: Could not create ReplicationStrategy of type org.apache.cassandra.locator.RackUnawareStrategy
        at org.apache.cassandra.config.KSMetaData.inflate(KSMetaData.java:103)
        at org.apache.cassandra.db.DefsTable.loadFromStorage(DefsTable.java:106)
        at org.apache.cassandra.config.DatabaseDescriptor.loadSchemas(DatabaseDescriptor.java:441)
        at org.apache.cassandra.service.AbstractCassandraDaemon.setup(AbstractCassandraDaemon.java:109)
        at org.apache.cassandra.thrift.CassandraDaemon.setup(CassandraDaemon.java:54)
        at org.apache.cassandra.service.AbstractCassandraDaemon.activate(AbstractCassandraDaemon.java:199)
        at org.apache.cassandra.thrift.CassandraDaemon.main(CassandraDaemon.java:133)
Caused by: java.lang.ClassNotFoundException: org.apache.cassandra.locator.RackUnawareStrategy
        at java.net.URLClassLoader$1.run(URLClassLoader.java:202)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:307)
        at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:248)
        at java.lang.Class.forName0(Native Method)
        at java.lang.Class.forName(Class.java:169)
        at org.apache.cassandra.config.KSMetaData.inflate(KSMetaData.java:99)
        ... 6 more
Exception encountered during startup.
java.lang.RuntimeException: Could not create ReplicationStrategy of type org.apache.cassandra.locator.RackUnawareStrategy
        at org.apache.cassandra.config.KSMetaData.inflate(KSMetaData.java:103)
        at org.apache.cassandra.db.DefsTable.loadFromStorage(DefsTable.java:106)
        at org.apache.cassandra.config.DatabaseDescriptor.loadSchemas(DatabaseDescriptor.java:441)
        at org.apache.cassandra.service.AbstractCassandraDaemon.setup(AbstractCassandraDaemon.java:109)
        at org.apache.cassandra.thrift.CassandraDaemon.setup(CassandraDaemon.java:54)
        at org.apache.cassandra.service.AbstractCassandraDaemon.activate(AbstractCassandraDaemon.java:199)
        at org.apache.cassandra.thrift.CassandraDaemon.main(CassandraDaemon.java:133)
Caused by: java.lang.ClassNotFoundException: org.apache.cassandra.locator.RackUnawareStrategy
        at java.net.URLClassLoader$1.run(URLClassLoader.java:202)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:307)
        at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:248)
        at java.lang.Class.forName0(Native Method)
        at java.lang.Class.forName(Class.java:169)
        at org.apache.cassandra.config.KSMetaData.inflate(KSMetaData.java:99)
        ... 6 more
The University of Dundee is a Scottish Registered Charity, No. SC015096.



Re: Moving from 0.7.0-beta1 to nightly build

Posted by AeC <ac...@computing.dundee.ac.uk>.
For the record,

I solved this by bouncing the cluster down to 0.6.5 and then following the
upgrade procedure to the nightly build.

I couldn't find any way of going from 0.7.0.beta1->nightly.  I'm wondering
if there is a potential problem looming for beta1->beta2 upgrades ?

Andy



> On 22/09/2010 15:28, "Jonathan Ellis" <jb...@gmail.com> wrote:
> 
>> the strategy is saved as part of your schema.  install the new build
>> before loading it.
>> 
>> On Wed, Sep 22, 2010 at 3:35 AM, andy C <ac...@computing.dundee.ac.uk>
>> wrote:
>>> I'm running a test cluster for development and evaluation of Cassandra.  In
>>> order to use the latest build of Hector (the 0.7.0 branch) I've need to move
>>> from 0.6.5 first to  0.7.0-beta1 of Cassandra and then to the latest nightly
>>> build (actually 2010-09-20_14-20-20).  In order to move over I've followed
>>> the following procedure:
>>> 1: get 0.7.0 running on all nodes, use schematool to update schema
>>> 2: confirm with cassandra-cli that the schema looks OK
>>> 3: Take down all nodes
>>> 4: on one node install nightly build
>>> 5:use config-converter to create config from 0.6.5 to nightly config
>>> 6: Change RackUnawareStrategy to SimpleStrategy in cassandra.yaml
>>> 7: start Cassandra
>>> However I am still getting RackUnawareStrategy exceptions (output below).


The University of Dundee is a Scottish Registered Charity, No. SC015096.



Re: Moving from 0.7.0-beta1 to nightly build

Posted by AeC <ac...@computing.dundee.ac.uk>.
Sorry Jonathan, not quite getting you

I'd gathered the strategy is stored in the schema.  However I'm not quite
getting what you mean, "Install the new build before loading it"  Are you
saying I should load the new build on a clean machine and use schematool to
import the schema from the beta1 cluster ?

Andy

On 22/09/2010 15:28, "Jonathan Ellis" <jb...@gmail.com> wrote:

> the strategy is saved as part of your schema.  install the new build
> before loading it.
> 
> On Wed, Sep 22, 2010 at 3:35 AM, andy C <ac...@computing.dundee.ac.uk>
> wrote:
>> I'm running a test cluster for development and evaluation of Cassandra.  In
>> order to use the latest build of Hector (the 0.7.0 branch) I've need to move
>> from 0.6.5 first to  0.7.0-beta1 of Cassandra and then to the latest nightly
>> build (actually 2010-09-20_14-20-20).  In order to move over I've followed
>> the following procedure:
>> 1: get 0.7.0 running on all nodes, use schematool to update schema
>> 2: confirm with cassandra-cli that the schema looks OK
>> 3: Take down all nodes
>> 4: on one node install nightly build
>> 5:use config-converter to create config from 0.6.5 to nightly config
>> 6: Change RackUnawareStrategy to SimpleStrategy in cassandra.yaml
>> 7: start Cassandra
>> However I am still getting RackUnawareStrategy exceptions (output below).
>


The University of Dundee is a Scottish Registered Charity, No. SC015096.



Re: Moving from 0.7.0-beta1 to nightly build

Posted by Jonathan Ellis <jb...@gmail.com>.
the strategy is saved as part of your schema.  install the new build
before loading it.

On Wed, Sep 22, 2010 at 3:35 AM, andy C <ac...@computing.dundee.ac.uk> wrote:
> I'm running a test cluster for development and evaluation of Cassandra.  In
> order to use the latest build of Hector (the 0.7.0 branch) I've need to move
> from 0.6.5 first to  0.7.0-beta1 of Cassandra and then to the latest nightly
> build (actually 2010-09-20_14-20-20).  In order to move over I've followed
> the following procedure:
> 1: get 0.7.0 running on all nodes, use schematool to update schema
> 2: confirm with cassandra-cli that the schema looks OK
> 3: Take down all nodes
> 4: on one node install nightly build
> 5:use config-converter to create config from 0.6.5 to nightly config
> 6: Change RackUnawareStrategy to SimpleStrategy in cassandra.yaml
> 7: start Cassandra
> However I am still getting RackUnawareStrategy exceptions (output below).
> Any ideas on the proper procedure ?
> Ta
> Andy
>  Using adaptive heap size:  1002M
>  INFO 09:12:15,962 JNA not found. Native methods will be disabled.
>  INFO 09:12:16,200 DiskAccessMode 'auto' determined to be standard,
> indexAccessMode is standard
>  INFO 09:12:16,368 Sampling index for
> /var/lib/cassandra/data/system/Schema-e-2-<>
>  INFO 09:12:16,393 Sampling index for
> /var/lib/cassandra/data/system/Schema-e-1-<>
>  INFO 09:12:16,425 Sampling index for
> /var/lib/cassandra/data/system/Migrations-e-2-<>
>  INFO 09:12:16,427 Sampling index for
> /var/lib/cassandra/data/system/Migrations-e-1-<>
>  INFO 09:12:16,436 Sampling index for
> /var/lib/cassandra/data/system/LocationInfo-e-9-<>
>  INFO 09:12:16,513 Loading schema version
> 6821232f-c248-11df-bad6-869ef8d6f292
> ERROR 09:12:16,866 Exception encountered during startup.
> java.lang.RuntimeException: Could not create ReplicationStrategy of type
> org.apache.cassandra.locator.RackUnawareStrategy
>         at
> org.apache.cassandra.config.KSMetaData.inflate(KSMetaData.java:103)
>         at
> org.apache.cassandra.db.DefsTable.loadFromStorage(DefsTable.java:106)
>         at
> org.apache.cassandra.config.DatabaseDescriptor.loadSchemas(DatabaseDescriptor.java:441)
>         at
> org.apache.cassandra.service.AbstractCassandraDaemon.setup(AbstractCassandraDaemon.java:109)
>         at
> org.apache.cassandra.thrift.CassandraDaemon.setup(CassandraDaemon.java:54)
>         at
> org.apache.cassandra.service.AbstractCassandraDaemon.activate(AbstractCassandraDaemon.java:199)
>         at
> org.apache.cassandra.thrift.CassandraDaemon.main(CassandraDaemon.java:133)
> Caused by: java.lang.ClassNotFoundException:
> org.apache.cassandra.locator.RackUnawareStrategy
>         at java.net.URLClassLoader$1.run(URLClassLoader.java:202)
>         at java.security.AccessController.doPrivileged(Native Method)
>         at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
>         at java.lang.ClassLoader.loadClass(ClassLoader.java:307)
>         at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
>         at java.lang.ClassLoader.loadClass(ClassLoader.java:248)
>         at java.lang.Class.forName0(Native Method)
>         at java.lang.Class.forName(Class.java:169)
>         at
> org.apache.cassandra.config.KSMetaData.inflate(KSMetaData.java:99)
>         ... 6 more
> Exception encountered during startup.
> java.lang.RuntimeException: Could not create ReplicationStrategy of type
> org.apache.cassandra.locator.RackUnawareStrategy
>         at
> org.apache.cassandra.config.KSMetaData.inflate(KSMetaData.java:103)
>         at
> org.apache.cassandra.db.DefsTable.loadFromStorage(DefsTable.java:106)
>         at
> org.apache.cassandra.config.DatabaseDescriptor.loadSchemas(DatabaseDescriptor.java:441)
>         at
> org.apache.cassandra.service.AbstractCassandraDaemon.setup(AbstractCassandraDaemon.java:109)
>         at
> org.apache.cassandra.thrift.CassandraDaemon.setup(CassandraDaemon.java:54)
>         at
> org.apache.cassandra.service.AbstractCassandraDaemon.activate(AbstractCassandraDaemon.java:199)
>         at
> org.apache.cassandra.thrift.CassandraDaemon.main(CassandraDaemon.java:133)
> Caused by: java.lang.ClassNotFoundException:
> org.apache.cassandra.locator.RackUnawareStrategy
>         at java.net.URLClassLoader$1.run(URLClassLoader.java:202)
>         at java.security.AccessController.doPrivileged(Native Method)
>         at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
>         at java.lang.ClassLoader.loadClass(ClassLoader.java:307)
>         at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
>         at java.lang.ClassLoader.loadClass(ClassLoader.java:248)
>         at java.lang.Class.forName0(Native Method)
>         at java.lang.Class.forName(Class.java:169)
>         at
> org.apache.cassandra.config.KSMetaData.inflate(KSMetaData.java:99)
>         ... 6 more
> The University of Dundee is a Scottish Registered Charity, No. SC015096.



-- 
Jonathan Ellis
Project Chair, Apache Cassandra
co-founder of Riptano, the source for professional Cassandra support
http://riptano.com