[jira] [Commented] (CASSANDRA-5761) Issue with secondary index sstable.

2013-11-27 Thread Andriy Yevsyukov (JIRA)

[ 
https://issues.apache.org/jira/browse/CASSANDRA-5761?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13833624#comment-13833624
 ] 

Andriy Yevsyukov commented on CASSANDRA-5761:
-

Hi,

Not sure whether it fixes the problem, but that's what we found.
1. Problem happens when often reset colum families- we are in active 
development stage so very often reset colum families(drop, create, load test 
data)
2. invalidate cache doesn't help.

Our solution:
We dropped keyspaces and deleted ALL files in data folder
We stopped to reset column families

For now everything is fine

 Issue with secondary index sstable.
 ---

 Key: CASSANDRA-5761
 URL: https://issues.apache.org/jira/browse/CASSANDRA-5761
 Project: Cassandra
  Issue Type: Bug
  Components: Core
Affects Versions: 1.2.5
Reporter: Andriy Yevsyukov
Priority: Critical

 With Cassandra 1.2.5 having issue very similar to 
 [CASSANDRA-5225|https://issues.apache.org/jira/browse/CASSANDRA-5225] but for 
 secondary index sstable. Every query that uses this index fails in Hector 
 with ConnectionTimeout but cassandra log says that reason is:
 {noformat}
 ERROR [ReadStage:55803] 2013-07-15 12:11:35,392 CassandraDaemon.java (line 
 175) Exception in thread Thread[ReadStage:55803,5,main]
 java.lang.RuntimeException: 
 org.apache.cassandra.io.sstable.CorruptSSTableException: 
 org.apache.cassandra.db.ColumnSerializer$CorruptColumnException: invalid 
 column name length 0 
 (/data/cassandra/data/betting/events/betting-events.events_sport_type_idx-ic-1-Data.db,
  19658 bytes remaining)
   at 
 org.apache.cassandra.service.StorageProxy$DroppableRunnable.run(StorageProxy.java:1582)
   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)
 Caused by: org.apache.cassandra.io.sstable.CorruptSSTableException: 
 org.apache.cassandra.db.ColumnSerializer$CorruptColumnException: invalid 
 column name length 0 
 (/data/cassandra/data/betting/events/betting-events.events_sport_type_idx-ic-1-Data.db,
  19658 bytes remaining)
   at 
 org.apache.cassandra.db.columniterator.SimpleSliceReader.computeNext(SimpleSliceReader.java:108)
   at 
 org.apache.cassandra.db.columniterator.SimpleSliceReader.computeNext(SimpleSliceReader.java:39)
   at 
 com.google.common.collect.AbstractIterator.tryToComputeNext(AbstractIterator.java:143)
   at 
 com.google.common.collect.AbstractIterator.hasNext(AbstractIterator.java:138)
   at 
 org.apache.cassandra.db.columniterator.SSTableSliceIterator.hasNext(SSTableSliceIterator.java:90)
   at 
 org.apache.cassandra.db.filter.QueryFilter$2.getNext(QueryFilter.java:171)
   at 
 org.apache.cassandra.db.filter.QueryFilter$2.hasNext(QueryFilter.java:154)
   at 
 org.apache.cassandra.utils.MergeIterator$Candidate.advance(MergeIterator.java:143)
   at 
 org.apache.cassandra.utils.MergeIterator$ManyToOne.init(MergeIterator.java:86)
   at org.apache.cassandra.utils.MergeIterator.get(MergeIterator.java:45)
   at 
 org.apache.cassandra.db.filter.QueryFilter.collateColumns(QueryFilter.java:134)
   at 
 org.apache.cassandra.db.filter.QueryFilter.collateOnDiskAtom(QueryFilter.java:84)
   at 
 org.apache.cassandra.db.CollationController.collectAllData(CollationController.java:293)
   at 
 org.apache.cassandra.db.CollationController.getTopLevelColumns(CollationController.java:65)
   at 
 org.apache.cassandra.db.ColumnFamilyStore.getTopLevelColumns(ColumnFamilyStore.java:1357)
   at 
 org.apache.cassandra.db.ColumnFamilyStore.getColumnFamily(ColumnFamilyStore.java:1214)
   at 
 org.apache.cassandra.db.ColumnFamilyStore.getColumnFamily(ColumnFamilyStore.java:1126)
   at 
 org.apache.cassandra.db.index.keys.KeysSearcher$1.computeNext(KeysSearcher.java:140)
   at 
 org.apache.cassandra.db.index.keys.KeysSearcher$1.computeNext(KeysSearcher.java:109)
   at 
 com.google.common.collect.AbstractIterator.tryToComputeNext(AbstractIterator.java:143)
   at 
 com.google.common.collect.AbstractIterator.hasNext(AbstractIterator.java:138)
   at 
 org.apache.cassandra.db.ColumnFamilyStore.filter(ColumnFamilyStore.java:1466)
   at 
 org.apache.cassandra.db.index.keys.KeysSearcher.search(KeysSearcher.java:82)
   at 
 org.apache.cassandra.db.index.SecondaryIndexManager.search(SecondaryIndexManager.java:548)
   at 
 org.apache.cassandra.db.ColumnFamilyStore.search(ColumnFamilyStore.java:1454)
   at 
 org.apache.cassandra.service.RangeSliceVerbHandler.executeLocally(RangeSliceVerbHandler.java:44)
   at 
 org.apache.cassandra.service.StorageProxy$LocalRangeSliceRunnable.runMayThrow(StorageProxy.java:1076)
  

[jira] [Commented] (CASSANDRA-5761) Issue with secondary index sstable.

2013-07-24 Thread Andriy Yevsyukov (JIRA)

[ 
https://issues.apache.org/jira/browse/CASSANDRA-5761?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13718133#comment-13718133
 ] 

Andriy Yevsyukov commented on CASSANDRA-5761:
-

Ok, we had no succes to reproduce this on test application, so I will try to 
explain our system a bit. We have 4 cassandra nodes, here our yaml:
{noformat}
cluster_name: 'Our Cassandra Cluster'
num_tokens: 256
initial_token:
max_hint_window_in_ms: 1080 # 3 hours
hinted_handoff_throttle_in_kb: 1024
max_hints_delivery_threads: 2
authenticator: org.apache.cassandra.auth.AllowAllAuthenticator
authorizer: org.apache.cassandra.auth.AllowAllAuthorizer
permissions_validity_in_ms: 2000
partitioner: org.apache.cassandra.dht.Murmur3Partitioner
commitlog_directory: /commit/cassandra/commitlog
disk_failure_policy: stop
key_cache_size_in_mb:
key_cache_save_period: 14400
row_cache_size_in_mb: 0
row_cache_save_period: 0
row_cache_provider: SerializingCacheProvider
saved_caches_directory: /commit/cassandra/saved_caches
commitlog_sync: periodic
commitlog_sync_period_in_ms: 1
commitlog_segment_size_in_mb: 32
seed_provider:
  - seeds: our secret seed ip
flush_largest_memtables_at: 0.75
reduce_cache_sizes_at: 0.85
reduce_cache_capacity_to: 0.6
concurrent_reads: 64
concurrent_writes: 128
memtable_total_space_in_mb: 1024
memtable_flush_writers: 2
memtable_flush_queue_size: 24
trickle_fsync: false
trickle_fsync_interval_in_kb: 10240
storage_port: 7000
ssl_storage_port: 7001
listen_address: 192.168.10.6
native_transport_port: 9042
start_rpc: true
rpc_address:
rpc_port: 9160
rpc_keepalive: true
rpc_server_type: sync
thrift_framed_transport_size_in_mb: 15
thrift_max_message_length_in_mb: 16
incremental_backups: false
snapshot_before_compaction: false
auto_snapshot: true
column_index_size_in_kb: 64
in_memory_compaction_limit_in_mb: 64
multithreaded_compaction: false
compaction_throughput_mb_per_sec: 16
compaction_preheat_key_cache: true
read_request_timeout_in_ms: 6
range_request_timeout_in_ms: 6
write_request_timeout_in_ms: 6
truncate_request_timeout_in_ms: 6
request_timeout_in_ms: 6
cross_node_timeout: false
endpoint_snitch: SimpleSnitch
dynamic_snitch_update_interval_in_ms: 100 
dynamic_snitch_reset_interval_in_ms: 60
dynamic_snitch_badness_threshold: 0.1
request_scheduler: org.apache.cassandra.scheduler.NoScheduler
index_interval: 128
server_encryption_options:
internode_encryption: none
keystore: conf/.keystore
keystore_password: cassandra
truststore: conf/.truststore
truststore_password: cassandra
client_encryption_options:
enabled: false
keystore: conf/.keystore
keystore_password: cassandra
internode_compression: all
inter_dc_tcp_nodelay: true
{noformat}
As I said we use CQL3 to create our tables structure before we start, here 
sample of how we do that for one CF:
{noformat}
CREATE KEYSPACE common WITH replication = {'class': 'SimpleStrategy', 
'replication_factor': 1};

CREATE TABLE events(
key varchar,
event_id bigint, 
rotation_number bigint, 
source_name varchar, 
event_date bigint, 
event_day bigint, 
timestamp bigint, 
description varchar,
type varchar, 
league varchar, 
points float,
units varchar,
has_result boolean, 
result varchar,
result_desc varchar,
result_score varchar,
actual boolean,
 PRIMARY KEY (key) 
)WITH COMPACT STORAGE;

CREATE INDEX ON events (event_id);
CREATE INDEX ON events (rotation_number);
CREATE INDEX ON events (source_name);
CREATE INDEX ON events (event_date);
CREATE INDEX ON events (event_day);
CREATE INDEX ON events (type);
CREATE INDEX ON events (league);
CREATE INDEX ON events (common_total_units);
CREATE INDEX ON events (has_result);
CREATE INDEX ON events (actual);
{noformat}

 We use our own resource adapter to work with Cassandra and our own api over 
Hector. Here the fragment how we store data into CF:
{noformat}
class RowMutationBatchContextImplK,N extends AbstractBuilderContextK,N 
implements RowMutationBatchContextK,N {

private K key;
private Mutator mutator;
private RowMutationK, N rowMutation;
private MutationBatch mutationBatch;

RowMutationBatchContextImpl(Mutator mutator) {
this.mutator = mutator;
}

@Override
public void setKey(K key) {
this.key = key;
}

@Override
public void setRowMutation(RowMutationK, N rowMutation){
this.rowMutation = rowMutation;
}

@Override
public RowMutationK,N getRowMutation() {
return rowMutation;
}

@Override
public void setMutationBatch(MutationBatch mutationBatch) {
this.mutationBatch = mutationBatch;
}

@Override
public MutationBatch getMutationBatch() {
return mutationBatch;
}

@Override
public V void insert(ColumnMetaDataN, V columnDef, V value) {
mutator.addInsertion(toKeyComponents(key), 
getColumnFamilyMetaData().getName(), 

[jira] [Commented] (CASSANDRA-5761) Issue with secondary index sstable.

2013-07-24 Thread Andriy Yevsyukov (JIRA)

[ 
https://issues.apache.org/jira/browse/CASSANDRA-5761?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13718317#comment-13718317
 ] 

Andriy Yevsyukov commented on CASSANDRA-5761:
-

Hi, thanks for the answer, no - it happens on every node so it shouldn't be a 
disk.

 Issue with secondary index sstable.
 ---

 Key: CASSANDRA-5761
 URL: https://issues.apache.org/jira/browse/CASSANDRA-5761
 Project: Cassandra
  Issue Type: Bug
  Components: Core
Affects Versions: 1.2.5
Reporter: Andriy Yevsyukov
Priority: Critical

 With Cassandra 1.2.5 having issue very similar to 
 [CASSANDRA-5225|https://issues.apache.org/jira/browse/CASSANDRA-5225] but for 
 secondary index sstable. Every query that uses this index fails in Hector 
 with ConnectionTimeout but cassandra log says that reason is:
 {noformat}
 ERROR [ReadStage:55803] 2013-07-15 12:11:35,392 CassandraDaemon.java (line 
 175) Exception in thread Thread[ReadStage:55803,5,main]
 java.lang.RuntimeException: 
 org.apache.cassandra.io.sstable.CorruptSSTableException: 
 org.apache.cassandra.db.ColumnSerializer$CorruptColumnException: invalid 
 column name length 0 
 (/data/cassandra/data/betting/events/betting-events.events_sport_type_idx-ic-1-Data.db,
  19658 bytes remaining)
   at 
 org.apache.cassandra.service.StorageProxy$DroppableRunnable.run(StorageProxy.java:1582)
   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)
 Caused by: org.apache.cassandra.io.sstable.CorruptSSTableException: 
 org.apache.cassandra.db.ColumnSerializer$CorruptColumnException: invalid 
 column name length 0 
 (/data/cassandra/data/betting/events/betting-events.events_sport_type_idx-ic-1-Data.db,
  19658 bytes remaining)
   at 
 org.apache.cassandra.db.columniterator.SimpleSliceReader.computeNext(SimpleSliceReader.java:108)
   at 
 org.apache.cassandra.db.columniterator.SimpleSliceReader.computeNext(SimpleSliceReader.java:39)
   at 
 com.google.common.collect.AbstractIterator.tryToComputeNext(AbstractIterator.java:143)
   at 
 com.google.common.collect.AbstractIterator.hasNext(AbstractIterator.java:138)
   at 
 org.apache.cassandra.db.columniterator.SSTableSliceIterator.hasNext(SSTableSliceIterator.java:90)
   at 
 org.apache.cassandra.db.filter.QueryFilter$2.getNext(QueryFilter.java:171)
   at 
 org.apache.cassandra.db.filter.QueryFilter$2.hasNext(QueryFilter.java:154)
   at 
 org.apache.cassandra.utils.MergeIterator$Candidate.advance(MergeIterator.java:143)
   at 
 org.apache.cassandra.utils.MergeIterator$ManyToOne.init(MergeIterator.java:86)
   at org.apache.cassandra.utils.MergeIterator.get(MergeIterator.java:45)
   at 
 org.apache.cassandra.db.filter.QueryFilter.collateColumns(QueryFilter.java:134)
   at 
 org.apache.cassandra.db.filter.QueryFilter.collateOnDiskAtom(QueryFilter.java:84)
   at 
 org.apache.cassandra.db.CollationController.collectAllData(CollationController.java:293)
   at 
 org.apache.cassandra.db.CollationController.getTopLevelColumns(CollationController.java:65)
   at 
 org.apache.cassandra.db.ColumnFamilyStore.getTopLevelColumns(ColumnFamilyStore.java:1357)
   at 
 org.apache.cassandra.db.ColumnFamilyStore.getColumnFamily(ColumnFamilyStore.java:1214)
   at 
 org.apache.cassandra.db.ColumnFamilyStore.getColumnFamily(ColumnFamilyStore.java:1126)
   at 
 org.apache.cassandra.db.index.keys.KeysSearcher$1.computeNext(KeysSearcher.java:140)
   at 
 org.apache.cassandra.db.index.keys.KeysSearcher$1.computeNext(KeysSearcher.java:109)
   at 
 com.google.common.collect.AbstractIterator.tryToComputeNext(AbstractIterator.java:143)
   at 
 com.google.common.collect.AbstractIterator.hasNext(AbstractIterator.java:138)
   at 
 org.apache.cassandra.db.ColumnFamilyStore.filter(ColumnFamilyStore.java:1466)
   at 
 org.apache.cassandra.db.index.keys.KeysSearcher.search(KeysSearcher.java:82)
   at 
 org.apache.cassandra.db.index.SecondaryIndexManager.search(SecondaryIndexManager.java:548)
   at 
 org.apache.cassandra.db.ColumnFamilyStore.search(ColumnFamilyStore.java:1454)
   at 
 org.apache.cassandra.service.RangeSliceVerbHandler.executeLocally(RangeSliceVerbHandler.java:44)
   at 
 org.apache.cassandra.service.StorageProxy$LocalRangeSliceRunnable.runMayThrow(StorageProxy.java:1076)
   at 
 org.apache.cassandra.service.StorageProxy$DroppableRunnable.run(StorageProxy.java:1578)
   ... 3 more
 Caused by: org.apache.cassandra.db.ColumnSerializer$CorruptColumnException: 
 invalid column name length 0 
 

[jira] [Commented] (CASSANDRA-5761) Issue with secondary index sstable.

2013-07-19 Thread Andriy Yevsyukov (JIRA)

[ 
https://issues.apache.org/jira/browse/CASSANDRA-5761?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13713397#comment-13713397
 ] 

Andriy Yevsyukov commented on CASSANDRA-5761:
-

Ok, our CF primary key consists of only one column and this column is never 
empty. I made sstable2json to check and I see that all rows have proper value 
in this column. Data type for this key is string if it matter. Previously it 
worked good (when we have string length in this row as 28) but now some row has 
key length of 38 and we have such a problem

 Issue with secondary index sstable.
 ---

 Key: CASSANDRA-5761
 URL: https://issues.apache.org/jira/browse/CASSANDRA-5761
 Project: Cassandra
  Issue Type: Bug
  Components: Core
Affects Versions: 1.2.5
Reporter: Andriy Yevsyukov
Priority: Critical

 With Cassandra 1.2.5 having issue very similar to 
 [CASSANDRA-5225|https://issues.apache.org/jira/browse/CASSANDRA-5225] but for 
 secondary index sstable. Every query that uses this index fails in Hector 
 with ConnectionTimeout but cassandra log says that reason is:
 {noformat}
 ERROR [ReadStage:55803] 2013-07-15 12:11:35,392 CassandraDaemon.java (line 
 175) Exception in thread Thread[ReadStage:55803,5,main]
 java.lang.RuntimeException: 
 org.apache.cassandra.io.sstable.CorruptSSTableException: 
 org.apache.cassandra.db.ColumnSerializer$CorruptColumnException: invalid 
 column name length 0 
 (/data/cassandra/data/betting/events/betting-events.events_sport_type_idx-ic-1-Data.db,
  19658 bytes remaining)
   at 
 org.apache.cassandra.service.StorageProxy$DroppableRunnable.run(StorageProxy.java:1582)
   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)
 Caused by: org.apache.cassandra.io.sstable.CorruptSSTableException: 
 org.apache.cassandra.db.ColumnSerializer$CorruptColumnException: invalid 
 column name length 0 
 (/data/cassandra/data/betting/events/betting-events.events_sport_type_idx-ic-1-Data.db,
  19658 bytes remaining)
   at 
 org.apache.cassandra.db.columniterator.SimpleSliceReader.computeNext(SimpleSliceReader.java:108)
   at 
 org.apache.cassandra.db.columniterator.SimpleSliceReader.computeNext(SimpleSliceReader.java:39)
   at 
 com.google.common.collect.AbstractIterator.tryToComputeNext(AbstractIterator.java:143)
   at 
 com.google.common.collect.AbstractIterator.hasNext(AbstractIterator.java:138)
   at 
 org.apache.cassandra.db.columniterator.SSTableSliceIterator.hasNext(SSTableSliceIterator.java:90)
   at 
 org.apache.cassandra.db.filter.QueryFilter$2.getNext(QueryFilter.java:171)
   at 
 org.apache.cassandra.db.filter.QueryFilter$2.hasNext(QueryFilter.java:154)
   at 
 org.apache.cassandra.utils.MergeIterator$Candidate.advance(MergeIterator.java:143)
   at 
 org.apache.cassandra.utils.MergeIterator$ManyToOne.init(MergeIterator.java:86)
   at org.apache.cassandra.utils.MergeIterator.get(MergeIterator.java:45)
   at 
 org.apache.cassandra.db.filter.QueryFilter.collateColumns(QueryFilter.java:134)
   at 
 org.apache.cassandra.db.filter.QueryFilter.collateOnDiskAtom(QueryFilter.java:84)
   at 
 org.apache.cassandra.db.CollationController.collectAllData(CollationController.java:293)
   at 
 org.apache.cassandra.db.CollationController.getTopLevelColumns(CollationController.java:65)
   at 
 org.apache.cassandra.db.ColumnFamilyStore.getTopLevelColumns(ColumnFamilyStore.java:1357)
   at 
 org.apache.cassandra.db.ColumnFamilyStore.getColumnFamily(ColumnFamilyStore.java:1214)
   at 
 org.apache.cassandra.db.ColumnFamilyStore.getColumnFamily(ColumnFamilyStore.java:1126)
   at 
 org.apache.cassandra.db.index.keys.KeysSearcher$1.computeNext(KeysSearcher.java:140)
   at 
 org.apache.cassandra.db.index.keys.KeysSearcher$1.computeNext(KeysSearcher.java:109)
   at 
 com.google.common.collect.AbstractIterator.tryToComputeNext(AbstractIterator.java:143)
   at 
 com.google.common.collect.AbstractIterator.hasNext(AbstractIterator.java:138)
   at 
 org.apache.cassandra.db.ColumnFamilyStore.filter(ColumnFamilyStore.java:1466)
   at 
 org.apache.cassandra.db.index.keys.KeysSearcher.search(KeysSearcher.java:82)
   at 
 org.apache.cassandra.db.index.SecondaryIndexManager.search(SecondaryIndexManager.java:548)
   at 
 org.apache.cassandra.db.ColumnFamilyStore.search(ColumnFamilyStore.java:1454)
   at 
 org.apache.cassandra.service.RangeSliceVerbHandler.executeLocally(RangeSliceVerbHandler.java:44)
   at 
 org.apache.cassandra.service.StorageProxy$LocalRangeSliceRunnable.runMayThrow(StorageProxy.java:1076)
   at 
 

[jira] [Commented] (CASSANDRA-5761) Issue with secondary index sstable.

2013-07-19 Thread Andriy Yevsyukov (JIRA)

[ 
https://issues.apache.org/jira/browse/CASSANDRA-5761?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13713432#comment-13713432
 ] 

Andriy Yevsyukov commented on CASSANDRA-5761:
-

We don't use StorageProxy and json2sstable and SSTableUnsortedWriter. 
Before start we create CFs skeletons where we set up mandatory columns and 
secondary indexes using CQL3
All the insertions we do only with plain Hector.

 Issue with secondary index sstable.
 ---

 Key: CASSANDRA-5761
 URL: https://issues.apache.org/jira/browse/CASSANDRA-5761
 Project: Cassandra
  Issue Type: Bug
  Components: Core
Affects Versions: 1.2.5
Reporter: Andriy Yevsyukov
Priority: Critical

 With Cassandra 1.2.5 having issue very similar to 
 [CASSANDRA-5225|https://issues.apache.org/jira/browse/CASSANDRA-5225] but for 
 secondary index sstable. Every query that uses this index fails in Hector 
 with ConnectionTimeout but cassandra log says that reason is:
 {noformat}
 ERROR [ReadStage:55803] 2013-07-15 12:11:35,392 CassandraDaemon.java (line 
 175) Exception in thread Thread[ReadStage:55803,5,main]
 java.lang.RuntimeException: 
 org.apache.cassandra.io.sstable.CorruptSSTableException: 
 org.apache.cassandra.db.ColumnSerializer$CorruptColumnException: invalid 
 column name length 0 
 (/data/cassandra/data/betting/events/betting-events.events_sport_type_idx-ic-1-Data.db,
  19658 bytes remaining)
   at 
 org.apache.cassandra.service.StorageProxy$DroppableRunnable.run(StorageProxy.java:1582)
   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)
 Caused by: org.apache.cassandra.io.sstable.CorruptSSTableException: 
 org.apache.cassandra.db.ColumnSerializer$CorruptColumnException: invalid 
 column name length 0 
 (/data/cassandra/data/betting/events/betting-events.events_sport_type_idx-ic-1-Data.db,
  19658 bytes remaining)
   at 
 org.apache.cassandra.db.columniterator.SimpleSliceReader.computeNext(SimpleSliceReader.java:108)
   at 
 org.apache.cassandra.db.columniterator.SimpleSliceReader.computeNext(SimpleSliceReader.java:39)
   at 
 com.google.common.collect.AbstractIterator.tryToComputeNext(AbstractIterator.java:143)
   at 
 com.google.common.collect.AbstractIterator.hasNext(AbstractIterator.java:138)
   at 
 org.apache.cassandra.db.columniterator.SSTableSliceIterator.hasNext(SSTableSliceIterator.java:90)
   at 
 org.apache.cassandra.db.filter.QueryFilter$2.getNext(QueryFilter.java:171)
   at 
 org.apache.cassandra.db.filter.QueryFilter$2.hasNext(QueryFilter.java:154)
   at 
 org.apache.cassandra.utils.MergeIterator$Candidate.advance(MergeIterator.java:143)
   at 
 org.apache.cassandra.utils.MergeIterator$ManyToOne.init(MergeIterator.java:86)
   at org.apache.cassandra.utils.MergeIterator.get(MergeIterator.java:45)
   at 
 org.apache.cassandra.db.filter.QueryFilter.collateColumns(QueryFilter.java:134)
   at 
 org.apache.cassandra.db.filter.QueryFilter.collateOnDiskAtom(QueryFilter.java:84)
   at 
 org.apache.cassandra.db.CollationController.collectAllData(CollationController.java:293)
   at 
 org.apache.cassandra.db.CollationController.getTopLevelColumns(CollationController.java:65)
   at 
 org.apache.cassandra.db.ColumnFamilyStore.getTopLevelColumns(ColumnFamilyStore.java:1357)
   at 
 org.apache.cassandra.db.ColumnFamilyStore.getColumnFamily(ColumnFamilyStore.java:1214)
   at 
 org.apache.cassandra.db.ColumnFamilyStore.getColumnFamily(ColumnFamilyStore.java:1126)
   at 
 org.apache.cassandra.db.index.keys.KeysSearcher$1.computeNext(KeysSearcher.java:140)
   at 
 org.apache.cassandra.db.index.keys.KeysSearcher$1.computeNext(KeysSearcher.java:109)
   at 
 com.google.common.collect.AbstractIterator.tryToComputeNext(AbstractIterator.java:143)
   at 
 com.google.common.collect.AbstractIterator.hasNext(AbstractIterator.java:138)
   at 
 org.apache.cassandra.db.ColumnFamilyStore.filter(ColumnFamilyStore.java:1466)
   at 
 org.apache.cassandra.db.index.keys.KeysSearcher.search(KeysSearcher.java:82)
   at 
 org.apache.cassandra.db.index.SecondaryIndexManager.search(SecondaryIndexManager.java:548)
   at 
 org.apache.cassandra.db.ColumnFamilyStore.search(ColumnFamilyStore.java:1454)
   at 
 org.apache.cassandra.service.RangeSliceVerbHandler.executeLocally(RangeSliceVerbHandler.java:44)
   at 
 org.apache.cassandra.service.StorageProxy$LocalRangeSliceRunnable.runMayThrow(StorageProxy.java:1076)
   at 
 org.apache.cassandra.service.StorageProxy$DroppableRunnable.run(StorageProxy.java:1578)
   ... 3 more
 Caused by: 

[jira] [Commented] (CASSANDRA-5761) Issue with secondary index sstable.

2013-07-19 Thread Andriy Yevsyukov (JIRA)

[ 
https://issues.apache.org/jira/browse/CASSANDRA-5761?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13713525#comment-13713525
 ] 

Andriy Yevsyukov commented on CASSANDRA-5761:
-

It is very complicated application to reproduce all steps. I'll try to create 
some test app to reproduce exception with many insertion with string keys and 
few indexes. But so far yes - we create COMPACT tables with about 10 secondary 
indexes. We don't use CQL3 for hector - only Mutator

 Issue with secondary index sstable.
 ---

 Key: CASSANDRA-5761
 URL: https://issues.apache.org/jira/browse/CASSANDRA-5761
 Project: Cassandra
  Issue Type: Bug
  Components: Core
Affects Versions: 1.2.5
Reporter: Andriy Yevsyukov
Priority: Critical

 With Cassandra 1.2.5 having issue very similar to 
 [CASSANDRA-5225|https://issues.apache.org/jira/browse/CASSANDRA-5225] but for 
 secondary index sstable. Every query that uses this index fails in Hector 
 with ConnectionTimeout but cassandra log says that reason is:
 {noformat}
 ERROR [ReadStage:55803] 2013-07-15 12:11:35,392 CassandraDaemon.java (line 
 175) Exception in thread Thread[ReadStage:55803,5,main]
 java.lang.RuntimeException: 
 org.apache.cassandra.io.sstable.CorruptSSTableException: 
 org.apache.cassandra.db.ColumnSerializer$CorruptColumnException: invalid 
 column name length 0 
 (/data/cassandra/data/betting/events/betting-events.events_sport_type_idx-ic-1-Data.db,
  19658 bytes remaining)
   at 
 org.apache.cassandra.service.StorageProxy$DroppableRunnable.run(StorageProxy.java:1582)
   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)
 Caused by: org.apache.cassandra.io.sstable.CorruptSSTableException: 
 org.apache.cassandra.db.ColumnSerializer$CorruptColumnException: invalid 
 column name length 0 
 (/data/cassandra/data/betting/events/betting-events.events_sport_type_idx-ic-1-Data.db,
  19658 bytes remaining)
   at 
 org.apache.cassandra.db.columniterator.SimpleSliceReader.computeNext(SimpleSliceReader.java:108)
   at 
 org.apache.cassandra.db.columniterator.SimpleSliceReader.computeNext(SimpleSliceReader.java:39)
   at 
 com.google.common.collect.AbstractIterator.tryToComputeNext(AbstractIterator.java:143)
   at 
 com.google.common.collect.AbstractIterator.hasNext(AbstractIterator.java:138)
   at 
 org.apache.cassandra.db.columniterator.SSTableSliceIterator.hasNext(SSTableSliceIterator.java:90)
   at 
 org.apache.cassandra.db.filter.QueryFilter$2.getNext(QueryFilter.java:171)
   at 
 org.apache.cassandra.db.filter.QueryFilter$2.hasNext(QueryFilter.java:154)
   at 
 org.apache.cassandra.utils.MergeIterator$Candidate.advance(MergeIterator.java:143)
   at 
 org.apache.cassandra.utils.MergeIterator$ManyToOne.init(MergeIterator.java:86)
   at org.apache.cassandra.utils.MergeIterator.get(MergeIterator.java:45)
   at 
 org.apache.cassandra.db.filter.QueryFilter.collateColumns(QueryFilter.java:134)
   at 
 org.apache.cassandra.db.filter.QueryFilter.collateOnDiskAtom(QueryFilter.java:84)
   at 
 org.apache.cassandra.db.CollationController.collectAllData(CollationController.java:293)
   at 
 org.apache.cassandra.db.CollationController.getTopLevelColumns(CollationController.java:65)
   at 
 org.apache.cassandra.db.ColumnFamilyStore.getTopLevelColumns(ColumnFamilyStore.java:1357)
   at 
 org.apache.cassandra.db.ColumnFamilyStore.getColumnFamily(ColumnFamilyStore.java:1214)
   at 
 org.apache.cassandra.db.ColumnFamilyStore.getColumnFamily(ColumnFamilyStore.java:1126)
   at 
 org.apache.cassandra.db.index.keys.KeysSearcher$1.computeNext(KeysSearcher.java:140)
   at 
 org.apache.cassandra.db.index.keys.KeysSearcher$1.computeNext(KeysSearcher.java:109)
   at 
 com.google.common.collect.AbstractIterator.tryToComputeNext(AbstractIterator.java:143)
   at 
 com.google.common.collect.AbstractIterator.hasNext(AbstractIterator.java:138)
   at 
 org.apache.cassandra.db.ColumnFamilyStore.filter(ColumnFamilyStore.java:1466)
   at 
 org.apache.cassandra.db.index.keys.KeysSearcher.search(KeysSearcher.java:82)
   at 
 org.apache.cassandra.db.index.SecondaryIndexManager.search(SecondaryIndexManager.java:548)
   at 
 org.apache.cassandra.db.ColumnFamilyStore.search(ColumnFamilyStore.java:1454)
   at 
 org.apache.cassandra.service.RangeSliceVerbHandler.executeLocally(RangeSliceVerbHandler.java:44)
   at 
 org.apache.cassandra.service.StorageProxy$LocalRangeSliceRunnable.runMayThrow(StorageProxy.java:1076)
   at 
 

[jira] [Commented] (CASSANDRA-5761) Issue with secondary index sstable.

2013-07-18 Thread Andriy Yevsyukov (JIRA)

[ 
https://issues.apache.org/jira/browse/CASSANDRA-5761?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13712080#comment-13712080
 ] 

Andriy Yevsyukov commented on CASSANDRA-5761:
-

Hi, thanks for the answer. In my case (if it happens with secondary index 
sstable) - does it mean that we insert empty value in secondary index column - 
or it means that our primary key for all the CF is empty (cause it have only 
one column in primary key clause)? Cause we do validate our primary keys.

 Issue with secondary index sstable.
 ---

 Key: CASSANDRA-5761
 URL: https://issues.apache.org/jira/browse/CASSANDRA-5761
 Project: Cassandra
  Issue Type: Bug
  Components: Core
Affects Versions: 1.2.5
Reporter: Andriy Yevsyukov
Priority: Critical

 With Cassandra 1.2.5 having issue very similar to 
 [CASSANDRA-5225|https://issues.apache.org/jira/browse/CASSANDRA-5225] but for 
 secondary index sstable. Every query that uses this index fails in Hector 
 with ConnectionTimeout but cassandra log says that reason is:
 {noformat}
 ERROR [ReadStage:55803] 2013-07-15 12:11:35,392 CassandraDaemon.java (line 
 175) Exception in thread Thread[ReadStage:55803,5,main]
 java.lang.RuntimeException: 
 org.apache.cassandra.io.sstable.CorruptSSTableException: 
 org.apache.cassandra.db.ColumnSerializer$CorruptColumnException: invalid 
 column name length 0 
 (/data/cassandra/data/betting/events/betting-events.events_sport_type_idx-ic-1-Data.db,
  19658 bytes remaining)
   at 
 org.apache.cassandra.service.StorageProxy$DroppableRunnable.run(StorageProxy.java:1582)
   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)
 Caused by: org.apache.cassandra.io.sstable.CorruptSSTableException: 
 org.apache.cassandra.db.ColumnSerializer$CorruptColumnException: invalid 
 column name length 0 
 (/data/cassandra/data/betting/events/betting-events.events_sport_type_idx-ic-1-Data.db,
  19658 bytes remaining)
   at 
 org.apache.cassandra.db.columniterator.SimpleSliceReader.computeNext(SimpleSliceReader.java:108)
   at 
 org.apache.cassandra.db.columniterator.SimpleSliceReader.computeNext(SimpleSliceReader.java:39)
   at 
 com.google.common.collect.AbstractIterator.tryToComputeNext(AbstractIterator.java:143)
   at 
 com.google.common.collect.AbstractIterator.hasNext(AbstractIterator.java:138)
   at 
 org.apache.cassandra.db.columniterator.SSTableSliceIterator.hasNext(SSTableSliceIterator.java:90)
   at 
 org.apache.cassandra.db.filter.QueryFilter$2.getNext(QueryFilter.java:171)
   at 
 org.apache.cassandra.db.filter.QueryFilter$2.hasNext(QueryFilter.java:154)
   at 
 org.apache.cassandra.utils.MergeIterator$Candidate.advance(MergeIterator.java:143)
   at 
 org.apache.cassandra.utils.MergeIterator$ManyToOne.init(MergeIterator.java:86)
   at org.apache.cassandra.utils.MergeIterator.get(MergeIterator.java:45)
   at 
 org.apache.cassandra.db.filter.QueryFilter.collateColumns(QueryFilter.java:134)
   at 
 org.apache.cassandra.db.filter.QueryFilter.collateOnDiskAtom(QueryFilter.java:84)
   at 
 org.apache.cassandra.db.CollationController.collectAllData(CollationController.java:293)
   at 
 org.apache.cassandra.db.CollationController.getTopLevelColumns(CollationController.java:65)
   at 
 org.apache.cassandra.db.ColumnFamilyStore.getTopLevelColumns(ColumnFamilyStore.java:1357)
   at 
 org.apache.cassandra.db.ColumnFamilyStore.getColumnFamily(ColumnFamilyStore.java:1214)
   at 
 org.apache.cassandra.db.ColumnFamilyStore.getColumnFamily(ColumnFamilyStore.java:1126)
   at 
 org.apache.cassandra.db.index.keys.KeysSearcher$1.computeNext(KeysSearcher.java:140)
   at 
 org.apache.cassandra.db.index.keys.KeysSearcher$1.computeNext(KeysSearcher.java:109)
   at 
 com.google.common.collect.AbstractIterator.tryToComputeNext(AbstractIterator.java:143)
   at 
 com.google.common.collect.AbstractIterator.hasNext(AbstractIterator.java:138)
   at 
 org.apache.cassandra.db.ColumnFamilyStore.filter(ColumnFamilyStore.java:1466)
   at 
 org.apache.cassandra.db.index.keys.KeysSearcher.search(KeysSearcher.java:82)
   at 
 org.apache.cassandra.db.index.SecondaryIndexManager.search(SecondaryIndexManager.java:548)
   at 
 org.apache.cassandra.db.ColumnFamilyStore.search(ColumnFamilyStore.java:1454)
   at 
 org.apache.cassandra.service.RangeSliceVerbHandler.executeLocally(RangeSliceVerbHandler.java:44)
   at 
 org.apache.cassandra.service.StorageProxy$LocalRangeSliceRunnable.runMayThrow(StorageProxy.java:1076)
   at 
 

[jira] [Commented] (CASSANDRA-5761) Issue with secondary index sstable.

2013-07-17 Thread Andriy Yevsyukov (JIRA)

[ 
https://issues.apache.org/jira/browse/CASSANDRA-5761?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13710906#comment-13710906
 ] 

Andriy Yevsyukov commented on CASSANDRA-5761:
-

Hi, anyone, please help with this issue, it's really very critical.

 Issue with secondary index sstable.
 ---

 Key: CASSANDRA-5761
 URL: https://issues.apache.org/jira/browse/CASSANDRA-5761
 Project: Cassandra
  Issue Type: Bug
  Components: Core
Affects Versions: 1.2.5
Reporter: Andriy Yevsyukov
Priority: Critical

 With Cassandra 1.2.5 having issue very similar to 
 [CASSANDRA-5225|https://issues.apache.org/jira/browse/CASSANDRA-5225] but for 
 secondary index sstable. Every query that uses this index fails in Hector 
 with ConnectionTimeout but cassandra log says that reason is:
 {noformat}
 ERROR [ReadStage:55803] 2013-07-15 12:11:35,392 CassandraDaemon.java (line 
 175) Exception in thread Thread[ReadStage:55803,5,main]
 java.lang.RuntimeException: 
 org.apache.cassandra.io.sstable.CorruptSSTableException: 
 org.apache.cassandra.db.ColumnSerializer$CorruptColumnException: invalid 
 column name length 0 
 (/data/cassandra/data/betting/events/betting-events.events_sport_type_idx-ic-1-Data.db,
  19658 bytes remaining)
   at 
 org.apache.cassandra.service.StorageProxy$DroppableRunnable.run(StorageProxy.java:1582)
   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)
 Caused by: org.apache.cassandra.io.sstable.CorruptSSTableException: 
 org.apache.cassandra.db.ColumnSerializer$CorruptColumnException: invalid 
 column name length 0 
 (/data/cassandra/data/betting/events/betting-events.events_sport_type_idx-ic-1-Data.db,
  19658 bytes remaining)
   at 
 org.apache.cassandra.db.columniterator.SimpleSliceReader.computeNext(SimpleSliceReader.java:108)
   at 
 org.apache.cassandra.db.columniterator.SimpleSliceReader.computeNext(SimpleSliceReader.java:39)
   at 
 com.google.common.collect.AbstractIterator.tryToComputeNext(AbstractIterator.java:143)
   at 
 com.google.common.collect.AbstractIterator.hasNext(AbstractIterator.java:138)
   at 
 org.apache.cassandra.db.columniterator.SSTableSliceIterator.hasNext(SSTableSliceIterator.java:90)
   at 
 org.apache.cassandra.db.filter.QueryFilter$2.getNext(QueryFilter.java:171)
   at 
 org.apache.cassandra.db.filter.QueryFilter$2.hasNext(QueryFilter.java:154)
   at 
 org.apache.cassandra.utils.MergeIterator$Candidate.advance(MergeIterator.java:143)
   at 
 org.apache.cassandra.utils.MergeIterator$ManyToOne.init(MergeIterator.java:86)
   at org.apache.cassandra.utils.MergeIterator.get(MergeIterator.java:45)
   at 
 org.apache.cassandra.db.filter.QueryFilter.collateColumns(QueryFilter.java:134)
   at 
 org.apache.cassandra.db.filter.QueryFilter.collateOnDiskAtom(QueryFilter.java:84)
   at 
 org.apache.cassandra.db.CollationController.collectAllData(CollationController.java:293)
   at 
 org.apache.cassandra.db.CollationController.getTopLevelColumns(CollationController.java:65)
   at 
 org.apache.cassandra.db.ColumnFamilyStore.getTopLevelColumns(ColumnFamilyStore.java:1357)
   at 
 org.apache.cassandra.db.ColumnFamilyStore.getColumnFamily(ColumnFamilyStore.java:1214)
   at 
 org.apache.cassandra.db.ColumnFamilyStore.getColumnFamily(ColumnFamilyStore.java:1126)
   at 
 org.apache.cassandra.db.index.keys.KeysSearcher$1.computeNext(KeysSearcher.java:140)
   at 
 org.apache.cassandra.db.index.keys.KeysSearcher$1.computeNext(KeysSearcher.java:109)
   at 
 com.google.common.collect.AbstractIterator.tryToComputeNext(AbstractIterator.java:143)
   at 
 com.google.common.collect.AbstractIterator.hasNext(AbstractIterator.java:138)
   at 
 org.apache.cassandra.db.ColumnFamilyStore.filter(ColumnFamilyStore.java:1466)
   at 
 org.apache.cassandra.db.index.keys.KeysSearcher.search(KeysSearcher.java:82)
   at 
 org.apache.cassandra.db.index.SecondaryIndexManager.search(SecondaryIndexManager.java:548)
   at 
 org.apache.cassandra.db.ColumnFamilyStore.search(ColumnFamilyStore.java:1454)
   at 
 org.apache.cassandra.service.RangeSliceVerbHandler.executeLocally(RangeSliceVerbHandler.java:44)
   at 
 org.apache.cassandra.service.StorageProxy$LocalRangeSliceRunnable.runMayThrow(StorageProxy.java:1076)
   at 
 org.apache.cassandra.service.StorageProxy$DroppableRunnable.run(StorageProxy.java:1578)
   ... 3 more
 Caused by: org.apache.cassandra.db.ColumnSerializer$CorruptColumnException: 
 invalid column name length 0 
 

[jira] [Created] (CASSANDRA-5761) Issue with secondary index sstable.

2013-07-15 Thread Andriy Yevsyukov (JIRA)
Andriy Yevsyukov created CASSANDRA-5761:
---

 Summary: Issue with secondary index sstable.
 Key: CASSANDRA-5761
 URL: https://issues.apache.org/jira/browse/CASSANDRA-5761
 Project: Cassandra
  Issue Type: Bug
  Components: Core
Affects Versions: 1.2.5
Reporter: Andriy Yevsyukov


With Cassandra 1.2.5 having issue very similar to 
[CASSANDRA-5225|https://issues.apache.org/jira/browse/CASSANDRA-5225] but for 
secondary index sstable. Every query that uses this index fails in Hector with 
ConnectionTimeout but cassandra log says that reason is:
{noformat}
ERROR [ReadStage:55803] 2013-07-15 12:11:35,392 CassandraDaemon.java (line 175) 
Exception in thread Thread[ReadStage:55803,5,main]
java.lang.RuntimeException: 
org.apache.cassandra.io.sstable.CorruptSSTableException: 
org.apache.cassandra.db.ColumnSerializer$CorruptColumnException: invalid column 
name length 0 
(/data/cassandra/data/betting/events/betting-events.events_sport_type_idx-ic-1-Data.db,
 19658 bytes remaining)
at 
org.apache.cassandra.service.StorageProxy$DroppableRunnable.run(StorageProxy.java:1582)
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)
Caused by: org.apache.cassandra.io.sstable.CorruptSSTableException: 
org.apache.cassandra.db.ColumnSerializer$CorruptColumnException: invalid column 
name length 0 
(/data/cassandra/data/betting/events/betting-events.events_sport_type_idx-ic-1-Data.db,
 19658 bytes remaining)
at 
org.apache.cassandra.db.columniterator.SimpleSliceReader.computeNext(SimpleSliceReader.java:108)
at 
org.apache.cassandra.db.columniterator.SimpleSliceReader.computeNext(SimpleSliceReader.java:39)
at 
com.google.common.collect.AbstractIterator.tryToComputeNext(AbstractIterator.java:143)
at 
com.google.common.collect.AbstractIterator.hasNext(AbstractIterator.java:138)
at 
org.apache.cassandra.db.columniterator.SSTableSliceIterator.hasNext(SSTableSliceIterator.java:90)
at 
org.apache.cassandra.db.filter.QueryFilter$2.getNext(QueryFilter.java:171)
at 
org.apache.cassandra.db.filter.QueryFilter$2.hasNext(QueryFilter.java:154)
at 
org.apache.cassandra.utils.MergeIterator$Candidate.advance(MergeIterator.java:143)
at 
org.apache.cassandra.utils.MergeIterator$ManyToOne.init(MergeIterator.java:86)
at org.apache.cassandra.utils.MergeIterator.get(MergeIterator.java:45)
at 
org.apache.cassandra.db.filter.QueryFilter.collateColumns(QueryFilter.java:134)
at 
org.apache.cassandra.db.filter.QueryFilter.collateOnDiskAtom(QueryFilter.java:84)
at 
org.apache.cassandra.db.CollationController.collectAllData(CollationController.java:293)
at 
org.apache.cassandra.db.CollationController.getTopLevelColumns(CollationController.java:65)
at 
org.apache.cassandra.db.ColumnFamilyStore.getTopLevelColumns(ColumnFamilyStore.java:1357)
at 
org.apache.cassandra.db.ColumnFamilyStore.getColumnFamily(ColumnFamilyStore.java:1214)
at 
org.apache.cassandra.db.ColumnFamilyStore.getColumnFamily(ColumnFamilyStore.java:1126)
at 
org.apache.cassandra.db.index.keys.KeysSearcher$1.computeNext(KeysSearcher.java:140)
at 
org.apache.cassandra.db.index.keys.KeysSearcher$1.computeNext(KeysSearcher.java:109)
at 
com.google.common.collect.AbstractIterator.tryToComputeNext(AbstractIterator.java:143)
at 
com.google.common.collect.AbstractIterator.hasNext(AbstractIterator.java:138)
at 
org.apache.cassandra.db.ColumnFamilyStore.filter(ColumnFamilyStore.java:1466)
at 
org.apache.cassandra.db.index.keys.KeysSearcher.search(KeysSearcher.java:82)
at 
org.apache.cassandra.db.index.SecondaryIndexManager.search(SecondaryIndexManager.java:548)
at 
org.apache.cassandra.db.ColumnFamilyStore.search(ColumnFamilyStore.java:1454)
at 
org.apache.cassandra.service.RangeSliceVerbHandler.executeLocally(RangeSliceVerbHandler.java:44)
at 
org.apache.cassandra.service.StorageProxy$LocalRangeSliceRunnable.runMayThrow(StorageProxy.java:1076)
at 
org.apache.cassandra.service.StorageProxy$DroppableRunnable.run(StorageProxy.java:1578)
... 3 more
Caused by: org.apache.cassandra.db.ColumnSerializer$CorruptColumnException: 
invalid column name length 0 
(/data/cassandra/data/betting/events/betting-events.events_sport_type_idx-ic-1-Data.db,
 19658 bytes remaining)
at 
org.apache.cassandra.db.ColumnSerializer$CorruptColumnException.create(ColumnSerializer.java:148)
at 
org.apache.cassandra.db.RangeTombstone$Serializer.deserializeBody(RangeTombstone.java:279)
at 

[jira] [Updated] (CASSANDRA-5761) Issue with secondary index sstable.

2013-07-15 Thread Andriy Yevsyukov (JIRA)

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

Andriy Yevsyukov updated CASSANDRA-5761:


Priority: Critical  (was: Major)

 Issue with secondary index sstable.
 ---

 Key: CASSANDRA-5761
 URL: https://issues.apache.org/jira/browse/CASSANDRA-5761
 Project: Cassandra
  Issue Type: Bug
  Components: Core
Affects Versions: 1.2.5
Reporter: Andriy Yevsyukov
Priority: Critical

 With Cassandra 1.2.5 having issue very similar to 
 [CASSANDRA-5225|https://issues.apache.org/jira/browse/CASSANDRA-5225] but for 
 secondary index sstable. Every query that uses this index fails in Hector 
 with ConnectionTimeout but cassandra log says that reason is:
 {noformat}
 ERROR [ReadStage:55803] 2013-07-15 12:11:35,392 CassandraDaemon.java (line 
 175) Exception in thread Thread[ReadStage:55803,5,main]
 java.lang.RuntimeException: 
 org.apache.cassandra.io.sstable.CorruptSSTableException: 
 org.apache.cassandra.db.ColumnSerializer$CorruptColumnException: invalid 
 column name length 0 
 (/data/cassandra/data/betting/events/betting-events.events_sport_type_idx-ic-1-Data.db,
  19658 bytes remaining)
   at 
 org.apache.cassandra.service.StorageProxy$DroppableRunnable.run(StorageProxy.java:1582)
   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)
 Caused by: org.apache.cassandra.io.sstable.CorruptSSTableException: 
 org.apache.cassandra.db.ColumnSerializer$CorruptColumnException: invalid 
 column name length 0 
 (/data/cassandra/data/betting/events/betting-events.events_sport_type_idx-ic-1-Data.db,
  19658 bytes remaining)
   at 
 org.apache.cassandra.db.columniterator.SimpleSliceReader.computeNext(SimpleSliceReader.java:108)
   at 
 org.apache.cassandra.db.columniterator.SimpleSliceReader.computeNext(SimpleSliceReader.java:39)
   at 
 com.google.common.collect.AbstractIterator.tryToComputeNext(AbstractIterator.java:143)
   at 
 com.google.common.collect.AbstractIterator.hasNext(AbstractIterator.java:138)
   at 
 org.apache.cassandra.db.columniterator.SSTableSliceIterator.hasNext(SSTableSliceIterator.java:90)
   at 
 org.apache.cassandra.db.filter.QueryFilter$2.getNext(QueryFilter.java:171)
   at 
 org.apache.cassandra.db.filter.QueryFilter$2.hasNext(QueryFilter.java:154)
   at 
 org.apache.cassandra.utils.MergeIterator$Candidate.advance(MergeIterator.java:143)
   at 
 org.apache.cassandra.utils.MergeIterator$ManyToOne.init(MergeIterator.java:86)
   at org.apache.cassandra.utils.MergeIterator.get(MergeIterator.java:45)
   at 
 org.apache.cassandra.db.filter.QueryFilter.collateColumns(QueryFilter.java:134)
   at 
 org.apache.cassandra.db.filter.QueryFilter.collateOnDiskAtom(QueryFilter.java:84)
   at 
 org.apache.cassandra.db.CollationController.collectAllData(CollationController.java:293)
   at 
 org.apache.cassandra.db.CollationController.getTopLevelColumns(CollationController.java:65)
   at 
 org.apache.cassandra.db.ColumnFamilyStore.getTopLevelColumns(ColumnFamilyStore.java:1357)
   at 
 org.apache.cassandra.db.ColumnFamilyStore.getColumnFamily(ColumnFamilyStore.java:1214)
   at 
 org.apache.cassandra.db.ColumnFamilyStore.getColumnFamily(ColumnFamilyStore.java:1126)
   at 
 org.apache.cassandra.db.index.keys.KeysSearcher$1.computeNext(KeysSearcher.java:140)
   at 
 org.apache.cassandra.db.index.keys.KeysSearcher$1.computeNext(KeysSearcher.java:109)
   at 
 com.google.common.collect.AbstractIterator.tryToComputeNext(AbstractIterator.java:143)
   at 
 com.google.common.collect.AbstractIterator.hasNext(AbstractIterator.java:138)
   at 
 org.apache.cassandra.db.ColumnFamilyStore.filter(ColumnFamilyStore.java:1466)
   at 
 org.apache.cassandra.db.index.keys.KeysSearcher.search(KeysSearcher.java:82)
   at 
 org.apache.cassandra.db.index.SecondaryIndexManager.search(SecondaryIndexManager.java:548)
   at 
 org.apache.cassandra.db.ColumnFamilyStore.search(ColumnFamilyStore.java:1454)
   at 
 org.apache.cassandra.service.RangeSliceVerbHandler.executeLocally(RangeSliceVerbHandler.java:44)
   at 
 org.apache.cassandra.service.StorageProxy$LocalRangeSliceRunnable.runMayThrow(StorageProxy.java:1076)
   at 
 org.apache.cassandra.service.StorageProxy$DroppableRunnable.run(StorageProxy.java:1578)
   ... 3 more
 Caused by: org.apache.cassandra.db.ColumnSerializer$CorruptColumnException: 
 invalid column name length 0 
 (/data/cassandra/data/betting/events/betting-events.events_sport_type_idx-ic-1-Data.db,
  19658 bytes remaining)
   at