[ https://issues.apache.org/jira/browse/CASSANDRA-6004?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
James P updated CASSANDRA-6004: ------------------------------- Description: When performing a "Select Count()" query on a table belonging to a keyspace with a replication factor less than the total node count, the following error is encountered which ultimately results in an rpc_timeout for the request: ERROR 18:47:54,660 Exception in thread Thread[Thread-5,5,main] java.lang.AssertionError at org.apache.cassandra.db.filter.IDiskAtomFilter$Serializer.deserialize(IDiskAtomFilter.java:116) at org.apache.cassandra.db.RangeSliceCommandSerializer.deserialize(RangeSliceCommand.java:247) at org.apache.cassandra.db.RangeSliceCommandSerializer.deserialize(RangeSliceCommand.java:156) at org.apache.cassandra.net.MessageIn.read(MessageIn.java:99) at org.apache.cassandra.net.IncomingTcpConnection.receiveMessage(IncomingTcpConnection.java:148) at org.apache.cassandra.net.IncomingTcpConnection.handleModernVersion(IncomingTcpConnection.java:125) at org.apache.cassandra.net.IncomingTcpConnection.run(IncomingTcpConnection.java:73) The issue is not encountered when the replication factor is >= node count To replicate the issue: 1) Create the keyspace: CREATE KEYSPACE demodb WITH REPLICATION = {'class' : 'SimpleStrategy', 'replication_factor': 1}; 2) Create the table CREATE TABLE users ( user_name varchar, password varchar, gender varchar, session_token varchar, state varchar, birth_year bigint, PRIMARY KEY (user_name)); 3) Do a CQL query: "SELECT count( * ) FROM demodb.users" ; The issue is reproducible even if the table is empty. Both CQLSH and client (astyanax) api calls are affected. Tested on two different clusters (2-node and 8-node) was: When performing a "Select Count()" query on a table belonging to a keyspace with a replication factor less than the total node count, the following error is encountered which ultimately results in an rpc_timeout for the request: ERROR 18:47:54,660 Exception in thread Thread[Thread-5,5,main] java.lang.AssertionError at org.apache.cassandra.db.filter.IDiskAtomFilter$Serializer.deserialize(IDiskAtomFilter.java:116) at org.apache.cassandra.db.RangeSliceCommandSerializer.deserialize(RangeSliceCommand.java:247) at org.apache.cassandra.db.RangeSliceCommandSerializer.deserialize(RangeSliceCommand.java:156) at org.apache.cassandra.net.MessageIn.read(MessageIn.java:99) at org.apache.cassandra.net.IncomingTcpConnection.receiveMessage(IncomingTcpConnection.java:148) at org.apache.cassandra.net.IncomingTcpConnection.handleModernVersion(IncomingTcpConnection.java:125) at org.apache.cassandra.net.IncomingTcpConnection.run(IncomingTcpConnection.java:73) The issue is not encountered when the replication factor is >= node count To replicate the issue: 1) Create the keyspace: CREATE KEYSPACE demodb WITH REPLICATION = {'class' : 'SimpleStrategy', 'replication_factor': 1}; 2) Create the table CREATE TABLE users ( user_name varchar, password varchar, gender varchar, session_token varchar, state varchar, birth_year bigint, PRIMARY KEY (user_name)); 3) Do a CQL query: "SELECT count(*) FROM demodb.users" ; The issue is reproducible even if the table is empty. Both CQLSH and client (astyanax) api calls are affected. Tested on two different clusters (2-node and 8-node) > Performing a "Select count(*)" when replication factor < node count causes > assertion error and timeout > ------------------------------------------------------------------------------------------------------ > > Key: CASSANDRA-6004 > URL: https://issues.apache.org/jira/browse/CASSANDRA-6004 > Project: Cassandra > Issue Type: Bug > Components: API > Environment: Two node setup > Ubuntu Server 12.04 > Tested on JDK 1.6 and 1.7 > Reporter: James P > > When performing a "Select Count()" query on a table belonging to a keyspace > with a replication factor less than the total node count, the following error > is encountered which ultimately results in an rpc_timeout for the request: > ERROR 18:47:54,660 Exception in thread Thread[Thread-5,5,main] > java.lang.AssertionError > at > org.apache.cassandra.db.filter.IDiskAtomFilter$Serializer.deserialize(IDiskAtomFilter.java:116) > at > org.apache.cassandra.db.RangeSliceCommandSerializer.deserialize(RangeSliceCommand.java:247) > at > org.apache.cassandra.db.RangeSliceCommandSerializer.deserialize(RangeSliceCommand.java:156) > at org.apache.cassandra.net.MessageIn.read(MessageIn.java:99) > at > org.apache.cassandra.net.IncomingTcpConnection.receiveMessage(IncomingTcpConnection.java:148) > at > org.apache.cassandra.net.IncomingTcpConnection.handleModernVersion(IncomingTcpConnection.java:125) > at > org.apache.cassandra.net.IncomingTcpConnection.run(IncomingTcpConnection.java:73) > The issue is not encountered when the replication factor is >= node count > To replicate the issue: > 1) Create the keyspace: CREATE KEYSPACE demodb WITH REPLICATION = {'class' : > 'SimpleStrategy', 'replication_factor': 1}; > 2) Create the table CREATE TABLE users ( > user_name varchar, > password varchar, > gender varchar, > session_token varchar, > state varchar, > birth_year bigint, > PRIMARY KEY (user_name)); > 3) Do a CQL query: "SELECT count( * ) FROM demodb.users" ; > The issue is reproducible even if the table is empty. Both CQLSH and client > (astyanax) api calls are affected. Tested on two different clusters (2-node > and 8-node) -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira