cassandra-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Ondřej Černoš (JIRA) <j...@apache.org>
Subject [jira] [Updated] (CASSANDRA-5421) java.lang.ArrayIndexOutOfBoundsException when cassandra started on hibernated virtual instance
Date Wed, 03 Apr 2013 09:39:23 GMT

     [ https://issues.apache.org/jira/browse/CASSANDRA-5421?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]

Ondřej Černoš updated CASSANDRA-5421:
-------------------------------------

    Description: 
We have a cql3 table records:

{noformat}
CREATE TABLE records (
    all varchar,
    record_id varchar,
    uid varchar,
    validity bigint,
    some_property int,
    PRIMARY KEY (all, record_id)
) WITH comment = 'Records';
{noformat}

with an index:

{noformat}
CREATE INDEX records_uid_idx ON records (uid);
{noformat}

We stored a couple of values in the table before the weekend with TTL set to see if the records
expire. The instance we tested the behaviour on was put to sleep during the weekend.

We started the instance yesterday on 11:31:41,809 and at 13:57:28,195 we tried the  following:

{noformat}
select * from records;
{noformat}

just to check the record were deleted on TTL.

This is what we got:

{noformat}
TSocket read 0 bytes
{noformat}

We found the following exception in the log:

{noformat}
ERROR 13:57:28,195 Error occurred during processing of message.
java.lang.ArrayIndexOutOfBoundsException: 1
	at org.apache.cassandra.cql3.statements.ColumnGroupMap.add(ColumnGroupMap.java:43)
	at org.apache.cassandra.cql3.statements.ColumnGroupMap.access$200(ColumnGroupMap.java:31)
	at org.apache.cassandra.cql3.statements.ColumnGroupMap$Builder.add(ColumnGroupMap.java:128)
	at org.apache.cassandra.cql3.statements.SelectStatement.process(SelectStatement.java:804)
	at org.apache.cassandra.cql3.statements.SelectStatement.processResults(SelectStatement.java:146)
	at org.apache.cassandra.cql3.statements.SelectStatement.execute(SelectStatement.java:135)
	at org.apache.cassandra.cql3.statements.SelectStatement.execute(SelectStatement.java:62)
	at org.apache.cassandra.cql3.QueryProcessor.processStatement(QueryProcessor.java:132)
	at org.apache.cassandra.cql3.QueryProcessor.process(QueryProcessor.java:140)
	at org.apache.cassandra.thrift.CassandraServer.execute_cql3_query(CassandraServer.java:1739)
	at org.apache.cassandra.thrift.Cassandra$Processor$execute_cql3_query.getResult(Cassandra.java:4074)
	at org.apache.cassandra.thrift.Cassandra$Processor$execute_cql3_query.getResult(Cassandra.java:4062)
	at org.apache.thrift.ProcessFunction.process(ProcessFunction.java:32)
	at org.apache.thrift.TBaseProcessor.process(TBaseProcessor.java:34)
	at org.apache.cassandra.thrift.CustomTThreadPoolServer$WorkerProcess.run(CustomTThreadPoolServer.java:199)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
	at java.lang.Thread.run(Thread.java:722)
{noformat}

Second try raised the following error in {{cqlsh}}:

{noformat}
Traceback (most recent call last):
  File "bin/cqlsh", line 1001, in perform_statement_untraced
    self.cursor.execute(statement, decoder=decoder)
  File "bin/../lib/cql-internal-only-1.4.0.zip/cql-1.4.0/cql/cursor.py", line 80, in execute
    response = self.get_response(prepared_q, cl)
  File "bin/../lib/cql-internal-only-1.4.0.zip/cql-1.4.0/cql/thrifteries.py", line 77, in
get_response
    return self.handle_cql_execution_errors(doquery, compressed_q, compress, cl)
  File "bin/../lib/cql-internal-only-1.4.0.zip/cql-1.4.0/cql/thrifteries.py", line 96, in
handle_cql_execution_errors
    return executor(*args, **kwargs)
  File "bin/../lib/cql-internal-only-1.4.0.zip/cql-1.4.0/cql/cassandra/Cassandra.py", line
1782, in execute_cql3_query
    self.send_execute_cql3_query(query, compression, consistency)
  File "bin/../lib/cql-internal-only-1.4.0.zip/cql-1.4.0/cql/cassandra/Cassandra.py", line
1793, in send_execute_cql3_query
    self._oprot.trans.flush()
  File "bin/../lib/thrift-python-internal-only-0.7.0.zip/thrift/transport/TTransport.py",
line 293, in flush
    self.__trans.write(buf)
  File "bin/../lib/thrift-python-internal-only-0.7.0.zip/thrift/transport/TSocket.py", line
117, in write
    plus = self.handle.send(buff)
error: [Errno 32] Broken pipe
{noformat}

  was:
We have a cql3 table records:

{noformat}
CREATE TABLE records (
    all varchar,
    record_id varchar,
    uid varchar,
    validity bigint,
    some_property int,
    PRIMARY KEY (all, record_id)
) WITH comment = 'Records';
{noformat}

with an index:

{noformat}
CREATE INDEX tokens_uid_idx ON tokens (uid);
{noformat}

We stored a couple of values in the table before the weekend with TTL set to see if the records
expire. The instance we tested the behaviour on was put to sleep during the weekend.

We started the instance yesterday on 11:31:41,809 and at 13:57:28,195 we tried the  following:

{noformat}
select * from tokens;
{noformat}

just to check the record were deleted on TTL.

This is what we got:

{noformat}
TSocket read 0 bytes
{noformat}

We found the following exception in the log:

{noformat}
ERROR 13:57:28,195 Error occurred during processing of message.
java.lang.ArrayIndexOutOfBoundsException: 1
	at org.apache.cassandra.cql3.statements.ColumnGroupMap.add(ColumnGroupMap.java:43)
	at org.apache.cassandra.cql3.statements.ColumnGroupMap.access$200(ColumnGroupMap.java:31)
	at org.apache.cassandra.cql3.statements.ColumnGroupMap$Builder.add(ColumnGroupMap.java:128)
	at org.apache.cassandra.cql3.statements.SelectStatement.process(SelectStatement.java:804)
	at org.apache.cassandra.cql3.statements.SelectStatement.processResults(SelectStatement.java:146)
	at org.apache.cassandra.cql3.statements.SelectStatement.execute(SelectStatement.java:135)
	at org.apache.cassandra.cql3.statements.SelectStatement.execute(SelectStatement.java:62)
	at org.apache.cassandra.cql3.QueryProcessor.processStatement(QueryProcessor.java:132)
	at org.apache.cassandra.cql3.QueryProcessor.process(QueryProcessor.java:140)
	at org.apache.cassandra.thrift.CassandraServer.execute_cql3_query(CassandraServer.java:1739)
	at org.apache.cassandra.thrift.Cassandra$Processor$execute_cql3_query.getResult(Cassandra.java:4074)
	at org.apache.cassandra.thrift.Cassandra$Processor$execute_cql3_query.getResult(Cassandra.java:4062)
	at org.apache.thrift.ProcessFunction.process(ProcessFunction.java:32)
	at org.apache.thrift.TBaseProcessor.process(TBaseProcessor.java:34)
	at org.apache.cassandra.thrift.CustomTThreadPoolServer$WorkerProcess.run(CustomTThreadPoolServer.java:199)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
	at java.lang.Thread.run(Thread.java:722)
{noformat}

Second try raised the following error in {{cqlsh}}:

{noformat}
Traceback (most recent call last):
  File "bin/cqlsh", line 1001, in perform_statement_untraced
    self.cursor.execute(statement, decoder=decoder)
  File "bin/../lib/cql-internal-only-1.4.0.zip/cql-1.4.0/cql/cursor.py", line 80, in execute
    response = self.get_response(prepared_q, cl)
  File "bin/../lib/cql-internal-only-1.4.0.zip/cql-1.4.0/cql/thrifteries.py", line 77, in
get_response
    return self.handle_cql_execution_errors(doquery, compressed_q, compress, cl)
  File "bin/../lib/cql-internal-only-1.4.0.zip/cql-1.4.0/cql/thrifteries.py", line 96, in
handle_cql_execution_errors
    return executor(*args, **kwargs)
  File "bin/../lib/cql-internal-only-1.4.0.zip/cql-1.4.0/cql/cassandra/Cassandra.py", line
1782, in execute_cql3_query
    self.send_execute_cql3_query(query, compression, consistency)
  File "bin/../lib/cql-internal-only-1.4.0.zip/cql-1.4.0/cql/cassandra/Cassandra.py", line
1793, in send_execute_cql3_query
    self._oprot.trans.flush()
  File "bin/../lib/thrift-python-internal-only-0.7.0.zip/thrift/transport/TTransport.py",
line 293, in flush
    self.__trans.write(buf)
  File "bin/../lib/thrift-python-internal-only-0.7.0.zip/thrift/transport/TSocket.py", line
117, in write
    plus = self.handle.send(buff)
error: [Errno 32] Broken pipe
{noformat}

    
> java.lang.ArrayIndexOutOfBoundsException when cassandra started on hibernated virtual
instance
> ----------------------------------------------------------------------------------------------
>
>                 Key: CASSANDRA-5421
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-5421
>             Project: Cassandra
>          Issue Type: Bug
>          Components: Core
>    Affects Versions: 1.2.1
>            Reporter: Ondřej Černoš
>
> We have a cql3 table records:
> {noformat}
> CREATE TABLE records (
>     all varchar,
>     record_id varchar,
>     uid varchar,
>     validity bigint,
>     some_property int,
>     PRIMARY KEY (all, record_id)
> ) WITH comment = 'Records';
> {noformat}
> with an index:
> {noformat}
> CREATE INDEX records_uid_idx ON records (uid);
> {noformat}
> We stored a couple of values in the table before the weekend with TTL set to see if the
records expire. The instance we tested the behaviour on was put to sleep during the weekend.
> We started the instance yesterday on 11:31:41,809 and at 13:57:28,195 we tried the  following:
> {noformat}
> select * from records;
> {noformat}
> just to check the record were deleted on TTL.
> This is what we got:
> {noformat}
> TSocket read 0 bytes
> {noformat}
> We found the following exception in the log:
> {noformat}
> ERROR 13:57:28,195 Error occurred during processing of message.
> java.lang.ArrayIndexOutOfBoundsException: 1
> 	at org.apache.cassandra.cql3.statements.ColumnGroupMap.add(ColumnGroupMap.java:43)
> 	at org.apache.cassandra.cql3.statements.ColumnGroupMap.access$200(ColumnGroupMap.java:31)
> 	at org.apache.cassandra.cql3.statements.ColumnGroupMap$Builder.add(ColumnGroupMap.java:128)
> 	at org.apache.cassandra.cql3.statements.SelectStatement.process(SelectStatement.java:804)
> 	at org.apache.cassandra.cql3.statements.SelectStatement.processResults(SelectStatement.java:146)
> 	at org.apache.cassandra.cql3.statements.SelectStatement.execute(SelectStatement.java:135)
> 	at org.apache.cassandra.cql3.statements.SelectStatement.execute(SelectStatement.java:62)
> 	at org.apache.cassandra.cql3.QueryProcessor.processStatement(QueryProcessor.java:132)
> 	at org.apache.cassandra.cql3.QueryProcessor.process(QueryProcessor.java:140)
> 	at org.apache.cassandra.thrift.CassandraServer.execute_cql3_query(CassandraServer.java:1739)
> 	at org.apache.cassandra.thrift.Cassandra$Processor$execute_cql3_query.getResult(Cassandra.java:4074)
> 	at org.apache.cassandra.thrift.Cassandra$Processor$execute_cql3_query.getResult(Cassandra.java:4062)
> 	at org.apache.thrift.ProcessFunction.process(ProcessFunction.java:32)
> 	at org.apache.thrift.TBaseProcessor.process(TBaseProcessor.java:34)
> 	at org.apache.cassandra.thrift.CustomTThreadPoolServer$WorkerProcess.run(CustomTThreadPoolServer.java:199)
> 	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
> 	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
> 	at java.lang.Thread.run(Thread.java:722)
> {noformat}
> Second try raised the following error in {{cqlsh}}:
> {noformat}
> Traceback (most recent call last):
>   File "bin/cqlsh", line 1001, in perform_statement_untraced
>     self.cursor.execute(statement, decoder=decoder)
>   File "bin/../lib/cql-internal-only-1.4.0.zip/cql-1.4.0/cql/cursor.py", line 80, in
execute
>     response = self.get_response(prepared_q, cl)
>   File "bin/../lib/cql-internal-only-1.4.0.zip/cql-1.4.0/cql/thrifteries.py", line 77,
in get_response
>     return self.handle_cql_execution_errors(doquery, compressed_q, compress, cl)
>   File "bin/../lib/cql-internal-only-1.4.0.zip/cql-1.4.0/cql/thrifteries.py", line 96,
in handle_cql_execution_errors
>     return executor(*args, **kwargs)
>   File "bin/../lib/cql-internal-only-1.4.0.zip/cql-1.4.0/cql/cassandra/Cassandra.py",
line 1782, in execute_cql3_query
>     self.send_execute_cql3_query(query, compression, consistency)
>   File "bin/../lib/cql-internal-only-1.4.0.zip/cql-1.4.0/cql/cassandra/Cassandra.py",
line 1793, in send_execute_cql3_query
>     self._oprot.trans.flush()
>   File "bin/../lib/thrift-python-internal-only-0.7.0.zip/thrift/transport/TTransport.py",
line 293, in flush
>     self.__trans.write(buf)
>   File "bin/../lib/thrift-python-internal-only-0.7.0.zip/thrift/transport/TSocket.py",
line 117, in write
>     plus = self.handle.send(buff)
> error: [Errno 32] Broken pipe
> {noformat}

--
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

Mime
View raw message