Fixed in 1.0.9 / 1.1 https://issues.apache.org/jira/browse/CASSANDRA-4095
Cheers
-
Aaron Morton
Freelance Developer
@aaronmorton
http://www.thelastpickle.com
On 27/03/2012, at 12:56 PM, John Laban wrote:
Has anyone seen this particular NPE before from Cassandra?
This is on 1.0.8. It seems to happen transiently on multiple nodes in my
cluster, every so often, and goes away.
ERROR [Thrift:45] 2012-03-26 19:59:12,024 Cassandra.java (line 3041) Internal
error processing get_slice
java.lang.NullPointerException
at
org.apache.cassandra.db.SliceFromReadCommand.maybeGenerateRetryCommand(SliceFromReadCommand.java:76)
at
org.apache.cassandra.service.StorageProxy.fetchRows(StorageProxy.java:724)
at
org.apache.cassandra.service.StorageProxy.read(StorageProxy.java:564)
at
org.apache.cassandra.thrift.CassandraServer.readColumnFamily(CassandraServer.java:128)
at
org.apache.cassandra.thrift.CassandraServer.getSlice(CassandraServer.java:283)
at
org.apache.cassandra.thrift.CassandraServer.multigetSliceInternal(CassandraServer.java:365)
at
org.apache.cassandra.thrift.CassandraServer.get_slice(CassandraServer.java:326)
at
org.apache.cassandra.thrift.Cassandra$Processor$get_slice.process(Cassandra.java:3033)
at
org.apache.cassandra.thrift.Cassandra$Processor.process(Cassandra.java:2889)
at
org.apache.cassandra.thrift.CustomTThreadPoolServer$WorkerProcess.run(CustomTThreadPoolServer.java:187)
at
java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
at java.lang.Thread.run(Thread.java:662)
The line in question is (I think) the one below, so it looks like the column
family reference for a row can sometimes be null?
int liveColumnsInRow = row != null ? row.cf.getLiveColumnCount() : 0;
Thanks,
John