[ 
https://issues.apache.org/jira/browse/CASSANDRA-5202?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13605947#comment-13605947
 ] 

Jeremiah Jordan commented on CASSANDRA-5202:
--------------------------------------------

bq. I don't want to embed UUID cfId to file name
I like this idea a lot.  I have seen some users with issues of files not be 
deleted after truncate/drop cf, but the cf is dropped from the schema.  On 
re-create those old files are going to get re-imported.  Now, this does make it 
a pain for when you want to restore a cf to another cluster, or to the same 
cluster after a drop, as you have to rename all the files, or bulk load them 
and make bulk loader ignore the UUID or something...

                
> AssertionError in the backend: "DecoratedKey(-1, ) != DecoratedKey(x, y) ..." 
> while querying data after bulk insert - 1M rows with 100 columns. Also 
> failure to drop column families
> ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
>
>                 Key: CASSANDRA-5202
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-5202
>             Project: Cassandra
>          Issue Type: Bug
>          Components: Core
>    Affects Versions: 1.1.9
>         Environment: OS: Windows 7, 
> Server: Cassandra 1.1.9 release drop
> Client: astyanax 1.56.21, 
> JVM: Sun/Oracle JVM 64 bit (jdk1.6.0_27)
>            Reporter: Marat Bedretdinov
>              Labels: test
>         Attachments: 5202-1.1.txt, astyanax-stress-driver.zip
>
>
> Attached is a driver that sequentially:
> 1. Drops keyspace
> 2. Creates keyspace
> 4. Creates 2 column families
> 5. Seeds 1M rows with 100 columns
> 6. Queries these 2 column families
> The above steps are repeated 1000 times.
> The following exception is observed at random (race - SEDA?):
> ERROR [ReadStage:55] 2013-01-29 19:24:52,676 AbstractCassandraDaemon.java 
> (line 135) Exception in thread Thread[ReadStage:55,5,main]
> java.lang.AssertionError: DecoratedKey(-1, ) != 
> DecoratedKey(62819832764241410631599989027761269388, 313a31) in 
> C:\var\lib\cassandra\data\user_role_reverse_index\business_entity_role\user_role_reverse_index-business_entity_role-hf-1-Data.db
>       at 
> org.apache.cassandra.db.columniterator.SSTableSliceIterator.<init>(SSTableSliceIterator.java:60)
>       at 
> org.apache.cassandra.db.filter.SliceQueryFilter.getSSTableColumnIterator(SliceQueryFilter.java:67)
>       at 
> org.apache.cassandra.db.filter.QueryFilter.getSSTableColumnIterator(QueryFilter.java:79)
>       at 
> org.apache.cassandra.db.CollationController.collectAllData(CollationController.java:256)
>       at 
> org.apache.cassandra.db.CollationController.getTopLevelColumns(CollationController.java:64)
>       at 
> org.apache.cassandra.db.ColumnFamilyStore.getTopLevelColumns(ColumnFamilyStore.java:1367)
>       at 
> org.apache.cassandra.db.ColumnFamilyStore.getColumnFamily(ColumnFamilyStore.java:1229)
>       at 
> org.apache.cassandra.db.ColumnFamilyStore.getColumnFamily(ColumnFamilyStore.java:1164)
>       at org.apache.cassandra.db.Table.getRow(Table.java:378)
>       at 
> org.apache.cassandra.db.SliceFromReadCommand.getRow(SliceFromReadCommand.java:69)
>       at 
> org.apache.cassandra.service.StorageProxy$LocalReadRunnable.runMayThrow(StorageProxy.java:822)
>       at 
> org.apache.cassandra.service.StorageProxy$DroppableRunnable.run(StorageProxy.java:1271)
>       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)
> This exception appears in the server at the time of client submitting a query 
> request (row slice) and not at the time data is seeded. The client times out 
> and this data can no longer be queried as the same exception would always 
> occur from there on.
> Also on iteration 201, it appears that dropping column families failed and as 
> a result their recreation failed with unique column family name violation 
> (see exception below). Note that the data files are actually gone, so it 
> appears that the server runtime responsible for creating column family was 
> out of sync with the piece that dropped them:
> Starting dropping column families
> Dropped column families
> Starting dropping keyspace
> Dropped keyspace
> Starting creating column families
> Created column families
> Starting seeding data
> Total rows inserted: 1000000 in 5105 ms
> Iteration: 200; Total running time for 1000 queries is 232; Average running 
> time of 1000 queries is 0 ms
> Starting dropping column families
> Dropped column families
> Starting dropping keyspace
> Dropped keyspace
> Starting creating column families
> Created column families
> Starting seeding data
> Total rows inserted: 1000000 in 5361 ms
> Iteration: 201; Total running time for 1000 queries is 222; Average running 
> time of 1000 queries is 0 ms
> Starting dropping column families
> Starting creating column families
> Exception in thread "main" 
> com.netflix.astyanax.connectionpool.exceptions.BadRequestException: 
> BadRequestException: [host=127.0.0.1(127.0.0.1):9160, latency=2468(2469), 
> attempts=1]InvalidRequestException(why:Keyspace names must be 
> case-insensitively unique ("user_role_reverse_index" conflicts with 
> "user_role_reverse_index"))
>       at 
> com.netflix.astyanax.thrift.ThriftConverter.ToConnectionPoolException(ThriftConverter.java:159)
>       at 
> com.netflix.astyanax.thrift.AbstractOperationImpl.execute(AbstractOperationImpl.java:60)
>       at 
> com.netflix.astyanax.thrift.AbstractOperationImpl.execute(AbstractOperationImpl.java:27)
>       at 
> com.netflix.astyanax.thrift.ThriftSyncConnectionFactoryImpl$1.execute(ThriftSyncConnectionFactoryImpl.java:140)
>       at 
> com.netflix.astyanax.connectionpool.impl.AbstractExecuteWithFailoverImpl.tryOperation(AbstractExecuteWithFailoverImpl.java:69)
>       at 
> com.netflix.astyanax.connectionpool.impl.AbstractHostPartitionConnectionPool.executeWithFailover(AbstractHostPartitionConnectionPool.java:255)
>       at 
> com.netflix.astyanax.thrift.ThriftKeyspaceImpl.createKeyspace(ThriftKeyspaceImpl.java:569)
>       at com.nuance.mca.astyanax.App.recreateKeyspaceSchema(App.java:139)
>       at com.nuance.mca.astyanax.App.main(App.java:88)
> Caused by: InvalidRequestException(why:Keyspace names must be 
> case-insensitively unique ("user_role_reverse_index" conflicts with 
> "user_role_reverse_index"))
>       at 
> org.apache.cassandra.thrift.Cassandra$system_add_keyspace_result.read(Cassandra.java:30010)
>       at org.apache.thrift.TServiceClient.receiveBase(TServiceClient.java:78)
>       at 
> org.apache.cassandra.thrift.Cassandra$Client.recv_system_add_keyspace(Cassandra.java:1285)
>       at 
> org.apache.cassandra.thrift.Cassandra$Client.system_add_keyspace(Cassandra.java:1272)
>       at 
> com.netflix.astyanax.thrift.ThriftKeyspaceImpl$14.internalExecute(ThriftKeyspaceImpl.java:584)
>       at 
> com.netflix.astyanax.thrift.ThriftKeyspaceImpl$14.internalExecute(ThriftKeyspaceImpl.java:572)
>       at 
> com.netflix.astyanax.thrift.AbstractOperationImpl.execute(AbstractOperationImpl.java:55)
>       ... 7 more

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

Reply via email to