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

Jeff Williams commented on CASSANDRA-4219:
------------------------------------------

Anything useful in that log?

I seems to have replicated the issue somehow. Firstly, I moved the servers onto 
public IP's, though the last octet is the same:

nodetool -h meta01 ring
Address         DC          Rack        Status State   Load            Owns     
           Token                                       
                                                                                
           113427455640312821154458202477256070485     
91.223.192.25   CPH         R1          Up     Normal  11.2 MB         33.33%   
           0                                           
91.223.192.26   CPH         R1          Up     Normal  15.16 MB        33.33%   
           56713727820156410577229101238628035242      
91.223.192.24   CPH         R1          Up     Normal  20.11 MB        33.33%   
           113427455640312821154458202477256070485   

I created a new keyspace PlayLog2 (PlayLog still does not work), and a column 
family playlog.

This was available on all nodes. I then ran a few test inserts which worked 
fine. Then, to test fail-over, I shutdown the node 91.223.192.26 during 
inserts. The inserts completed fine and a while later I restarted the node 
91.223.192.26. Then, when I went to re-run my tests, I see (Hector client):

5710 [Thread-1] DEBUG me.prettyprint.cassandra.connection.client.HThriftClient  
- Creating a new thrift connection to meta02.cph.aspiro.com(91.223.192.26):9160
5711 [Thread-0] DEBUG me.prettyprint.cassandra.connection.client.HThriftClient  
- keyspace reseting from null to PlayLog2
Exception in thread "Thread-1" 
me.prettyprint.hector.api.exceptions.HInvalidRequestException: 
InvalidRequestException(why:Keyspace PlayLog2 does not exist)

Sure enough, from command line client on 91.223.192.26, I see no PlayLog2 
keyspace, yet it exists on 91.223.192.24 and 91.223.192.25. I have attached the 
system.log from 91.223.192.26 in the hope that it is useful.
                
> Problem with creating keyspace after drop
> -----------------------------------------
>
>                 Key: CASSANDRA-4219
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-4219
>             Project: Cassandra
>          Issue Type: Bug
>    Affects Versions: 1.1.0
>         Environment: Debian 6.0.4 x64
>            Reporter: Jeff Williams
>             Fix For: 1.1.1
>
>         Attachments: 0001-Add-debug-logs.txt, system-debug.log.gz, 
> system-startup-debug.log.gz, system.log.gz
>
>
> Hi,
> I'm doing testing and wanted to drop a keyspace (with a column family) to 
> re-add it with a different strategy. So I ran in cqlsh:
> DROP KEYSPACE PlayLog;
> CREATE KEYSPACE PlayLog WITH strategy_class = 'SimpleStrategy'
>  AND strategy_options:replication_factor = 2;
> And everything seemed to be fine. I ran some inserts, which also seemed to go 
> fine, but then selecting them gave me:
> cqlsh:PlayLog> select count(*) from playlog;
> TSocket read 0 bytes
> I wasn't sure what was wrong, so I tried dropping and creating again, and now 
> when I try to create I get:
> cqlsh> CREATE KEYSPACE PlayLog WITH strategy_class = 'SimpleStrategy'
>   ...   AND strategy_options:replication_factor = 2;
> TSocket read 0 bytes
> And the keyspace doesn't get created. In the log it shows:
> ERROR [Thrift:4] 2012-05-03 18:23:05,124 CustomTThreadPoolServer.java (line 
> 204) Error occurred during processing of message.
> java.lang.RuntimeException: java.util.concurrent.ExecutionException: 
> java.lang.AssertionError
>        at 
> org.apache.cassandra.utils.FBUtilities.waitOnFuture(FBUtilities.java:372)
>        at 
> org.apache.cassandra.service.MigrationManager.announce(MigrationManager.java:191)
>        at 
> org.apache.cassandra.service.MigrationManager.announceNewKeyspace(MigrationManager.java:129)
>        at 
> org.apache.cassandra.cql.QueryProcessor.processStatement(QueryProcessor.java:701)
>        at 
> org.apache.cassandra.cql.QueryProcessor.process(QueryProcessor.java:875)
>        at 
> org.apache.cassandra.thrift.CassandraServer.execute_cql_query(CassandraServer.java:1235)
>        at 
> org.apache.cassandra.thrift.Cassandra$Processor$execute_cql_query.getResult(Cassandra.java:3458)
>        at 
> org.apache.cassandra.thrift.Cassandra$Processor$execute_cql_query.getResult(Cassandra.java:3446)
>        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:186)
>        at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown 
> Source)
>        at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
>        at java.lang.Thread.run(Unknown Source)
> Caused by: java.util.concurrent.ExecutionException: java.lang.AssertionError
>        at java.util.concurrent.FutureTask$Sync.innerGet(Unknown Source)
>        at java.util.concurrent.FutureTask.get(Unknown Source)
>        at 
> org.apache.cassandra.utils.FBUtilities.waitOnFuture(FBUtilities.java:368)
>        ... 13 more
> Caused by: java.lang.AssertionError
>        at org.apache.cassandra.db.DefsTable.updateKeyspace(DefsTable.java:441)
>        at org.apache.cassandra.db.DefsTable.mergeKeyspaces(DefsTable.java:339)
>        at org.apache.cassandra.db.DefsTable.mergeSchema(DefsTable.java:269)
>        at 
> org.apache.cassandra.service.MigrationManager$1.call(MigrationManager.java:214)
>        at java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source)
>        at java.util.concurrent.FutureTask.run(Unknown Source)
>        ... 3 more
> ERROR [MigrationStage:1] 2012-05-03 18:23:05,124 AbstractCassandraDaemon.java 
> (line 134) Exception in thread Thread[MigrationStage:1,5,main]
> java.lang.AssertionError
>        at org.apache.cassandra.db.DefsTable.updateKeyspace(DefsTable.java:441)
>        at org.apache.cassandra.db.DefsTable.mergeKeyspaces(DefsTable.java:339)
>        at org.apache.cassandra.db.DefsTable.mergeSchema(DefsTable.java:269)
>        at 
> org.apache.cassandra.service.MigrationManager$1.call(MigrationManager.java:214)
>        at java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source)
>        at java.util.concurrent.FutureTask.run(Unknown Source)
>        at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown 
> Source)
>        at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
>        at java.lang.Thread.run(Unknown Source)
> Any ideas how I can recover from this?
> I am running version 1.1.0 and have tried nodetool repair, cleanup, compact. 
> I can create other keyspaces, but still can't create a keyspace called 
> PlayLog even though it is not listed anywhere.
> Jeff

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to