Adam Dougal created CASSANDRA-10776:
---------------------------------------

             Summary: Prepare of statements after table creation fail with 
unconfigured column family
                 Key: CASSANDRA-10776
                 URL: https://issues.apache.org/jira/browse/CASSANDRA-10776
             Project: Cassandra
          Issue Type: Bug
            Reporter: Adam Dougal


Cassandra 2.1.8

We have multiple app instances trying to create the same table using IF NOT 
EXISTS.

We check for schema agreement via the Java Driver before and after every 
statement.

After creating the table we then prepare statements and we sometimes get:

{code}
com.datastax.driver.core.exceptions.InvalidQueryException: unconfigured 
columnfamily locks
        at 
com.datastax.driver.core.exceptions.InvalidQueryException.copy(InvalidQueryException.java:50)
 ~[cassandra-driver-core-2.1.8.jar:na]
        at 
com.datastax.driver.core.DriverThrowables.propagateCause(DriverThrowables.java:37)
 ~[cassandra-driver-core-2.1.8.jar:na]
        at 
com.datastax.driver.core.AbstractSession.prepare(AbstractSession.java:79) 
~[cassandra-driver-core-2.1.8.jar:na]
        at 
uk.sky.cirrus.locking.CassandraLockingMechanism.init(CassandraLockingMechanism.java:69)
 ~[main/:na]
        at uk.sky.cirrus.locking.Lock.acquire(Lock.java:35) [main/:na]
        at uk.sky.cirrus.CqlMigratorImpl.migrate(CqlMigratorImpl.java:83) 
[main/:na]
        at 
uk.sky.cirrus.locking.LockVerificationTest.lambda$shouldManageContentionsForSchemaMigrate$0(LockVerificationTest.java:90)
 [test/:na]
        at java.util.concurrent.FutureTask.run(FutureTask.java:266) 
~[na:1.8.0_60]
        at 
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) 
~[na:1.8.0_60]
        at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) 
~[na:1.8.0_60]
        at java.lang.Thread.run(Thread.java:745) ~[na:1.8.0_60]
{code}

Looking at the server logs we get:

{code}
ava.lang.RuntimeException: 
org.apache.cassandra.exceptions.ConfigurationException: Column family ID 
mismatch (found 90bbb372-9446-11e5-b1ca-8119a6964819; expected 
90b87f20-9446-11e5-b1ca-8119a6964819)
        at org.apache.cassandra.config.CFMetaData.reload(CFMetaData.java:1145) 
~[main/:na]
        at 
org.apache.cassandra.db.DefsTables.updateColumnFamily(DefsTables.java:422) 
~[main/:na]
        at 
org.apache.cassandra.db.DefsTables.mergeColumnFamilies(DefsTables.java:295) 
~[main/:na]
        at 
org.apache.cassandra.db.DefsTables.mergeSchemaInternal(DefsTables.java:194) 
~[main/:na]
        at org.apache.cassandra.db.DefsTables.mergeSchema(DefsTables.java:166) 
~[main/:na]
        at 
org.apache.cassandra.db.DefinitionsUpdateVerbHandler$1.runMayThrow(DefinitionsUpdateVerbHandler.java:49)
 ~[main/:na]
        at 
org.apache.cassandra.utils.WrappedRunnable.run(WrappedRunnable.java:28) 
~[main/:na]
        at 
java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) 
~[na:1.8.0_60]
        at java.util.concurrent.FutureTask.run(FutureTask.java:266) 
~[na:1.8.0_60]
        at 
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) 
~[na:1.8.0_60]
        at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) 
[na:1.8.0_60]
        at java.lang.Thread.run(Thread.java:745) [na:1.8.0_60]
{code}

We found this issue which is marked as resolved:
https://issues.apache.org/jira/browse/CASSANDRA-8387

Does the IF NOT EXISTS just check the local node?





--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to