HintedHandoff fails with could not reach schema agreement
---------------------------------------------------------

                 Key: CASSANDRA-2946
                 URL: https://issues.apache.org/jira/browse/CASSANDRA-2946
             Project: Cassandra
          Issue Type: Bug
          Components: Core
    Affects Versions: 0.8.2
            Reporter: Richard Low


To reproduce, have two nodes A and B.

1. On node A, create a keyspace with replication factor 1 and add a column 
family
2. Ensure node B has created the keyspace and column family
3. Take down node B
4. Insert some keys to A at CL.ANY, ensuring some keys should be written to B
5. Bring up node B
6. When hints are delivered, I get the error:

ERROR [HintedHandoff:1] 2011-07-25 17:19:14,729 AbstractCassandraDaemon.java 
(line 139) Fatal exception in thread Thread[HintedHandoff:1,1,main]
java.lang.RuntimeException: java.lang.RuntimeException: Could not reach schema 
agreement with /10.2.129.9 in 60000ms
        at 
org.apache.cassandra.utils.WrappedRunnable.run(WrappedRunnable.java:34)
        at 
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)
        at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)
        at java.lang.Thread.run(Thread.java:636)
Caused by: java.lang.RuntimeException: Could not reach schema agreement with 
/10.2.129.9 in 60000ms
        at 
org.apache.cassandra.db.HintedHandOffManager.waitForSchemaAgreement(HintedHandOffManager.java:290)
        at 
org.apache.cassandra.db.HintedHandOffManager.deliverHintsToEndpoint(HintedHandOffManager.java:301)
        at 
org.apache.cassandra.db.HintedHandOffManager.access$100(HintedHandOffManager.java:89)
        at 
org.apache.cassandra.db.HintedHandOffManager$2.runMayThrow(HintedHandOffManager.java:394)
        at 
org.apache.cassandra.utils.WrappedRunnable.run(WrappedRunnable.java:30)
        ... 3 more

If I use DatabaseDescriptor.getDefsVersion() instead of 
gossiper.getEndpointStateForEndpoint(FBUtilities.getLocalAddress()).getApplicationState(ApplicationState.SCHEMA)
 then the error goes away, and the hints are correctly delivered.

This may be the same issue as Aaron saw here: 
http://cassandra-user-incubator-apache-org.3065146.n2.nabble.com/ApplicationState-Schema-has-drifted-from-DatabaseDescriptor-td6006576.html,
 and may be related to CASSANDRA-2083.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to