Friday, March 22, 2013

Minor bug with C*1.2.2 and jdk8 on a pi


This is just a quick note on getting Cassandra to run on a Raspberry pi with jdk8.  It looks like a little bug has crept into the starup script in 1.2.2  that will stop C* from running on the pi with jdk1.8   To fix this locate  conf/cassandra-env.sh and comment out the following lines

#if [ "$JVM_VERSION" \> "1.7" ] ; then                                                                      
#    JVM_OPTS="$JVM_OPTS -XX:+UseCondCardMark"                                                              
#fi

It looks like jdk8 on the pi doesn't support the UseCondCardMark option, but it can be safely removed from the startup script. I'm told that the option was added "for  better lock handling especially on hotspot with multicore processor" (see https://issues.apache.org/jira/browse/CASSANDRA-4366 )  I’ll report this as a bug and hopefully it can fixed soon in a more elegant manor.