probably 0.5.1 is allowing an invalid query and erroring out when it actually runs it. 0.6 beta3 should catch the problem earlier.
On Wed, Mar 24, 2010 at 9:28 AM, Oleg Mürk <oleg.m...@gmail.com> wrote: > Hello, > I am having the following problem with Cassandra. When I first start > Cassandra, it works fine and I insert some data, but when I kill cassandra > and then start it again, it starts throwing NullPointerException (into > log4j). When I restart Cassandra once more, it doesn't throw the exception > (usually), but when I query for previously inserted data, it is gone. > I am using out-of-the box Cassandra 0.5.1 on a single node (Java 6 / OS X > 10.5.8). My schema is as follows: > ------------------------------------------------ > <Keyspace Name="zclosure"> > <KeysCachedFraction>0.01</KeysCachedFraction> > <ColumnFamily CompareWith="UTF8Type" Name="url-item"/> > <ColumnFamily CompareWith="UTF8Type" Name="url-item-headers"/> > </Keyspace> > ------------------------------------------------ > and the exception log is below. Any ideas? > Thank You, > Oleg Mürk > ----------------------------------------------- > ....... > INFO - Log replay complete > INFO - Saved Token found: 93658780503831948900522797887764765383 > INFO - Starting up server gossip > DEBUG - Starting to listen on localhost/127.0.0.1 > DEBUG - Binding thrift service to localhost/127.0.0.1:9160 > INFO - Cassandra starting up... > DEBUG - Disseminating load info ... > DEBUG - get_count > DEBUG - get_slice > DEBUG - strongread reading data for SliceFromReadCommand(table='zclosure', > key='http://paulgraham.com/kate.html', > column_parent='QueryPath(columnFamilyName='url-item', > superColumnName='null', col > umnName='null')', start='', finish='', reversed=false, count=2147483647) > from 2...@localhost/127.0.0.1 > ERROR - Error in ThreadPoolExecutor > java.lang.NullPointerException > at > org.apache.cassandra.config.DatabaseDescriptor.getComparator(DatabaseDescriptor.java:914) > at > org.apache.cassandra.io.SSTableReader.getColumnComparator(SSTableReader.java:414) > at > org.apache.cassandra.db.filter.SSTableSliceIterator.<init>(SSTableSliceIterator.java:54) > at > org.apache.cassandra.db.filter.SliceQueryFilter.getSSTableColumnIterator(SliceQueryFilter.java:63) > at > org.apache.cassandra.db.ColumnFamilyStore.getColumnFamilyInternal(ColumnFamilyStore.java:1245) > at > org.apache.cassandra.db.ColumnFamilyStore.getColumnFamily(ColumnFamilyStore.java:1203) > at > org.apache.cassandra.db.ColumnFamilyStore.getColumnFamily(ColumnFamilyStore.java:1172) > at org.apache.cassandra.db.Table.getRow(Table.java:415) > at > org.apache.cassandra.db.SliceFromReadCommand.getRow(SliceFromReadCommand.java:59) > at > org.apache.cassandra.db.ReadVerbHandler.doVerb(ReadVerbHandler.java:79) > at > org.apache.cassandra.net.MessageDeliveryTask.run(MessageDeliveryTask.java:38) > 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:637) > ERROR - Fatal exception in thread Thread[ROW-READ-STAGE:1,5,main] > java.lang.NullPointerException > at > org.apache.cassandra.config.DatabaseDescriptor.getComparator(DatabaseDescriptor.java:914) > at > org.apache.cassandra.io.SSTableReader.getColumnComparator(SSTableReader.java:414) > at > org.apache.cassandra.db.filter.SSTableSliceIterator.<init>(SSTableSliceIterator.java:54) > at > org.apache.cassandra.db.filter.SliceQueryFilter.getSSTableColumnIterator(SliceQueryFilter.java:63) > at > org.apache.cassandra.db.ColumnFamilyStore.getColumnFamilyInternal(ColumnFamilyStore.java:1245) > at > org.apache.cassandra.db.ColumnFamilyStore.getColumnFamily(ColumnFamilyStore.java:1203) > at > org.apache.cassandra.db.ColumnFamilyStore.getColumnFamily(ColumnFamilyStore.java:1172) > at org.apache.cassandra.db.Table.getRow(Table.java:415) > at > org.apache.cassandra.db.SliceFromReadCommand.getRow(SliceFromReadCommand.java:59) > at > org.apache.cassandra.db.ReadVerbHandler.doVerb(ReadVerbHandler.java:79) > at > org.apache.cassandra.net.MessageDeliveryTask.run(MessageDeliveryTask.java:38) > 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:637) >