cassandra-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Aleksey Yeschenko (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (CASSANDRA-13559) Schema version id mismatch while upgrading to 3.0.13
Date Wed, 31 May 2017 15:57:04 GMT

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

Aleksey Yeschenko commented on CASSANDRA-13559:
-----------------------------------------------

bq. There are two different upgrade issues here. Let's not mix those up.

There is only one confirmed issue here. It's a shame the JIRA is mixed up. We accidentally
changed the way the digest is calculated, slightly, in 3.0.13. The issue is increased migration
traffic. Not a big deal, but we should roll it back, so that the majority (lagging behind
latest, always) is not affected.

bq,  If we change the schema digest calculation in .14 again, we need to make sure that the
users on .13 will be able to upgrade to .14 as well without seeing major issues, e.g. with
schema migration storms.

Well, we can't, so you have to choose one:
1. prevent extra migration traffic for those migrating from [3.0.0, 3.0.12] to 3.0.14+
2. prevent extra migration traffic for those migrating from 3.0.13 to 3.0.14+

With 3.0.13 being super fresh, with relatively few people on it (who already went through
some extra migrations and survived anyway), I would say (1) is more important than (2).

> Schema version id mismatch while upgrading to 3.0.13
> ----------------------------------------------------
>
>                 Key: CASSANDRA-13559
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-13559
>             Project: Cassandra
>          Issue Type: Bug
>          Components: Core
>            Reporter: Jay Zhuang
>            Assignee: Stefania
>            Priority: Blocker
>
> As the order of SchemaKeyspace is changed ([6991556 | https://github.com/apache/cassandra/commit/6991556e431a51575744248a4c484270c4f918c9],
CASSANDRA-12213), the result of function [{{calculateSchemaDigest}}|https://github.com/apache/cassandra/blob/cassandra-3.0/src/java/org/apache/cassandra/schema/SchemaKeyspace.java#L311]
is also changed for the same schema. Which causes schema mismatch while upgrading 3.0.x ->
3.0.13.
> It could cause cassandra fail to start because Unknown CF exception. And streaming will
fail:
> {noformat}
> ERROR [main] 2017-05-26 18:58:57,572 CassandraDaemon.java:709 - Exception encountered
during startup
> java.lang.IllegalArgumentException: Unknown CF 83c8eae0-3a65-11e7-9a27-e17fd11571e3
> {noformat}
> {noformat}
> WARN  [MessagingService-Incoming-/IP] 2017-05-26 19:27:11,523 IncomingTcpConnection.java:101
- UnknownColumnFamilyException reading from socket; closing
> org.apache.cassandra.db.UnknownColumnFamilyException: Couldn't find table for cfId 922b7940-3a65-11e7-adf3-a3ff55d9bcf1.
If a table was just created, this is likely due to the schema not being fully propagated.
 Please wait for schema agreement on table creation.
> {noformat}
> Restart the new node will cause:
> {noformat}
> Exception (java.lang.NoSuchFieldError) encountered during startup: ALL
> java.lang.NoSuchFieldError: ALL
>         at org.apache.cassandra.service.ClientState.<clinit>(ClientState.java:67)
>         at org.apache.cassandra.cql3.QueryProcessor$InternalStateInstance.<init>(QueryProcessor.java:155)
>         at org.apache.cassandra.cql3.QueryProcessor$InternalStateInstance.<clinit>(QueryProcessor.java:149)
>         at org.apache.cassandra.cql3.QueryProcessor.internalQueryState(QueryProcessor.java:163)
>         at org.apache.cassandra.cql3.QueryProcessor.prepareInternal(QueryProcessor.java:286)
>         at org.apache.cassandra.cql3.QueryProcessor.executeInternal(QueryProcessor.java:294)
>         at org.apache.cassandra.db.SystemKeyspace.checkHealth(SystemKeyspace.java:900)
>         at org.apache.cassandra.service.StartupChecks$9.execute(StartupChecks.java:354)
>         at org.apache.cassandra.service.StartupChecks.verify(StartupChecks.java:110)
>         at org.apache.cassandra.service.CassandraDaemon.setup(CassandraDaemon.java:179)
>         at org.apache.cassandra.service.CassandraDaemon.activate(CassandraDaemon.java:569)
>         at org.apache.cassandra.service.CassandraDaemon.main(CassandraDaemon.java:697)
> {noformat}
> I would suggest to have the older list back for digest calculation and release 3.0.14.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)

---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@cassandra.apache.org
For additional commands, e-mail: commits-help@cassandra.apache.org


Mime
View raw message