[
https://issues.apache.org/jira/browse/CASSANDRA-2649?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13037998#comment-13037998
]
Jonathan Ellis commented on CASSANDRA-2649:
-------------------------------------------
The right thing to do is wait for agreement after each schema change. Relying
on integrityerror is broken since inserts will just fail. using
describe_schema_versions let's this be 100% correct instead of hoping you slept
long enough before proceeding.
bq. this currently employs no use of the thrift RPC API
since cql is built on thrift, it wouldn't be difficult to use the thrift method
until there is a "native" replacement.
> work-around schema disagreements from cqlsh
> -------------------------------------------
>
> Key: CASSANDRA-2649
> URL: https://issues.apache.org/jira/browse/CASSANDRA-2649
> Project: Cassandra
> Issue Type: Bug
> Components: Tools
> Affects Versions: 0.8.0 beta 2
> Reporter: Eric Evans
> Assignee: Eric Evans
> Priority: Minor
> Labels: cql
> Fix For: 0.8.0
>
> Attachments:
> v1-0001-CASSANDRA-2649-try-to-work-around-schema-disagreement-.txt
>
>
> It is handy to be able to put CQL statements in a flat-file and load them by
> redirecting to {{cqlsh}} stdin, but this can fail on a cluster when executing
> statements that modify schema.
> The attached patch works around this problem by retrying up to 3 times, with
> a progressive delay after each attempt. A better solution would probably be
> to compare schema versions, but this seems to work well enough, and is better
> than _not_ handling it at all.
--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira