In an attempt to replicate this error on a simpler system I have come across a different error but seemingly related problem. Now I am getting the following exception in system.log.
DEBUG [pool-1-thread-3] 2010-12-29 12:10:38,897 CassandraServer.java (line 362) insert ERROR [pool-1-thread-3] 2010-12-29 12:10:38,906 Cassandra.java (line 2960) Internal error processing insert java.lang.AssertionError at org.apache.cassandra.locator.TokenMetadata.firstTokenIndex(TokenMetadata.java:392) at org.apache.cassandra.locator.TokenMetadata.ringIterator(TokenMetadata.java:417) at org.apache.cassandra.locator.NetworkTopologyStrategy.calculateNaturalEndpoints(NetworkTopologyStrategy.java:95) at org.apache.cassandra.locator.AbstractReplicationStrategy.getNaturalEndpoints(AbstractReplicationStrategy.java:99) at org.apache.cassandra.service.StorageService.getNaturalEndpoints(StorageService.java:1411) at org.apache.cassandra.service.StorageService.getNaturalEndpoints(StorageService.java:1394) at org.apache.cassandra.service.StorageProxy.mutate(StorageProxy.java:109) at org.apache.cassandra.thrift.CassandraServer.doInsert(CassandraServer.java:442) at org.apache.cassandra.thrift.CassandraServer.insert(CassandraServer.java:379) at org.apache.cassandra.thrift.Cassandra$Processor$insert.process(Cassandra.java:2952) at org.apache.cassandra.thrift.Cassandra$Processor.process(Cassandra.java:2555) at org.apache.cassandra.thrift.CustomTThreadPoolServer$WorkerProcess.run(CustomTThreadPoolServer.java:167) 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:619) Looking at TokenMetadata.java:392, the assert that is triggered is: assert ring.size() > 0; Which led me to run nodetool ring which outputs a seemingly correct config: -sh-3.2$ nodetool -h localhost -p 8080 ring Address Status State Load Owns Token 10.5.64.26 Up Normal 47.16 KB 100.00% 1 To reproduce: * I have upgraded to 0.7RC3 so install the latest riptano 0.7rc3 rpm on a single node in "DC1". * In cassandra.yaml set initial_token = 1 * cassandra-topology.properties: 10.5.64.26=DC1:R1 default=DC2:R1 * Schema loaded via cassandra-cli: create keyspace KeyspaceDC1 with replication_factor = 1 and placement_strategy = 'org.apache.cassandra.locator.NetworkTopologyStrategy' and strategy_options = [{DC1:1, DC2:0}]; use KeyspaceDC1; create column family TestCF with column_type = 'Standard' and comparator = 'BytesType' and keys_cached = 200000 and rows_cached = 2000 and gc_grace = 0 and read_repair_chance = 0.0; * In cassandra-cli execute the following: [defa...@unknown] use KeyspaceDC1; Authenticated to keyspace: KeyspaceDC1 [defa...@keyspacedc1] set TestCF['some key']['some col'] = 'some value'; Internal error processing insert * Check system.log where you should find the above assertion error. Can anybody find a flaw in this setup? Do others agree something looks buggy? Thanks, -Thor On Dec 28, 2010, at 4:33 PM, Thor Carpenter wrote: Third try for good luck. Maybe this time I'll get it all in one email. :-) At time 15:55 I performed a write with CL = ONE, a subsequent read with CL = ONE and received correct results. Similar results occur with any read CL other than LOCAL_QUORUM. At time 15:58 I performed a write with CL = ONE, a subsequent read with CL = LOCAL_QUORUM and received a TimedOutException. System.log and cassandra.log are from server dlc05-sea to corresponds with the hector error message "Closing client CassandraClient<dlc05-sea:9160-50>". I haven't found anything in the logs that indicates the problem but maybe others with more discerning eyes can. Please let me know if I can provide any additional information. Thanks, -Thor <logs.zip><ATT00001..txt>