[jira] [Commented] (CASSANDRA-6685) Nodes never bootstrap if schema is empty
[ https://issues.apache.org/jira/browse/CASSANDRA-6685?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13944223#comment-13944223 ] Edward Capriolo commented on CASSANDRA-6685: Suggestion: if a machine starts up with no keyspaces it should attempt to create Keyspace1, Standard1I miss that old keyspace :) jk. I think it would be nice to fix it. New users do not know how to create keyspaces yet, they likely join nodes and then attempt to use nodetool ring to see the topology. I could see someone grinding for a while attempting to determine why nodes are not seeing each other. > Nodes never bootstrap if schema is empty > > > Key: CASSANDRA-6685 > URL: https://issues.apache.org/jira/browse/CASSANDRA-6685 > Project: Cassandra > Issue Type: Bug > Components: Core >Reporter: Richard Low >Assignee: Brandon Williams > Fix For: 1.2.16 > > > Since 1.2.15, bootstrap never completes if the schema is empty. The > bootstrapping node endlessly prints: > bq. {{INFO 12:37:44,863 JOINING: waiting for schema information to complete}} > until you add something to the schema (i.e. create a keyspace). > The problem looks to be caused by CASSANDRA-6648, where > MigrationManager.isReadForBootstrap() was changed to: > bq. {{return Schema.instance.getVersion() != null && > !Schema.emptyVersion.equals(Schema.instance.getVersion());}} > This is wrong since > {{Schema.emptyVersion.equals(Schema.instance.getVersion())}} is always true > if there is no schema. > We need some different logic for determining when the schema is propagated. > I haven't tested, but I expect this issue appears in 2.0.5 too. -- This message was sent by Atlassian JIRA (v6.2#6252)
[jira] [Commented] (CASSANDRA-6685) Nodes never bootstrap if schema is empty
[ https://issues.apache.org/jira/browse/CASSANDRA-6685?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13944211#comment-13944211 ] Rick Branson commented on CASSANDRA-6685: - Ran into this today trying to test out some new machines. It's not good that we've just been sitting on this for 6 weeks now. > Nodes never bootstrap if schema is empty > > > Key: CASSANDRA-6685 > URL: https://issues.apache.org/jira/browse/CASSANDRA-6685 > Project: Cassandra > Issue Type: Bug > Components: Core >Reporter: Richard Low >Assignee: Brandon Williams > Fix For: 1.2.16 > > > Since 1.2.15, bootstrap never completes if the schema is empty. The > bootstrapping node endlessly prints: > bq. {{INFO 12:37:44,863 JOINING: waiting for schema information to complete}} > until you add something to the schema (i.e. create a keyspace). > The problem looks to be caused by CASSANDRA-6648, where > MigrationManager.isReadForBootstrap() was changed to: > bq. {{return Schema.instance.getVersion() != null && > !Schema.emptyVersion.equals(Schema.instance.getVersion());}} > This is wrong since > {{Schema.emptyVersion.equals(Schema.instance.getVersion())}} is always true > if there is no schema. > We need some different logic for determining when the schema is propagated. > I haven't tested, but I expect this issue appears in 2.0.5 too. -- This message was sent by Atlassian JIRA (v6.2#6252)
[jira] [Commented] (CASSANDRA-6685) Nodes never bootstrap if schema is empty
[ https://issues.apache.org/jira/browse/CASSANDRA-6685?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13905915#comment-13905915 ] Brandon Williams commented on CASSANDRA-6685: - Thanks for your input. > Nodes never bootstrap if schema is empty > > > Key: CASSANDRA-6685 > URL: https://issues.apache.org/jira/browse/CASSANDRA-6685 > Project: Cassandra > Issue Type: Bug > Components: Core >Reporter: Richard Low >Assignee: Brandon Williams > Fix For: 1.2.16 > > > Since 1.2.15, bootstrap never completes if the schema is empty. The > bootstrapping node endlessly prints: > bq. {{INFO 12:37:44,863 JOINING: waiting for schema information to complete}} > until you add something to the schema (i.e. create a keyspace). > The problem looks to be caused by CASSANDRA-6648, where > MigrationManager.isReadForBootstrap() was changed to: > bq. {{return Schema.instance.getVersion() != null && > !Schema.emptyVersion.equals(Schema.instance.getVersion());}} > This is wrong since > {{Schema.emptyVersion.equals(Schema.instance.getVersion())}} is always true > if there is no schema. > We need some different logic for determining when the schema is propagated. > I haven't tested, but I expect this issue appears in 2.0.5 too. -- This message was sent by Atlassian JIRA (v6.1.5#6160)
[jira] [Commented] (CASSANDRA-6685) Nodes never bootstrap if schema is empty
[ https://issues.apache.org/jira/browse/CASSANDRA-6685?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13905898#comment-13905898 ] Robert Coli commented on CASSANDRA-6685: {quote}Luckily bootstrapping without schema isn't a huge problem or very common{quote} In every cluster I have ever run, my initial setup process goes : 1) coalesce cluster 2) load schema The above process seems "very common" to me; I am surprised to hear suggestion that anyone ever does anything else. A bug such as this one which would affect most noobs setting up My First Cassandra Cluster also seems "very common" to me, and a "huge problem." In my view, this bug is serious enough to warrant an accelerated 1.2.16 release schedule. > Nodes never bootstrap if schema is empty > > > Key: CASSANDRA-6685 > URL: https://issues.apache.org/jira/browse/CASSANDRA-6685 > Project: Cassandra > Issue Type: Bug > Components: Core >Reporter: Richard Low >Assignee: Brandon Williams > Fix For: 1.2.16 > > > Since 1.2.15, bootstrap never completes if the schema is empty. The > bootstrapping node endlessly prints: > bq. {{INFO 12:37:44,863 JOINING: waiting for schema information to complete}} > until you add something to the schema (i.e. create a keyspace). > The problem looks to be caused by CASSANDRA-6648, where > MigrationManager.isReadForBootstrap() was changed to: > bq. {{return Schema.instance.getVersion() != null && > !Schema.emptyVersion.equals(Schema.instance.getVersion());}} > This is wrong since > {{Schema.emptyVersion.equals(Schema.instance.getVersion())}} is always true > if there is no schema. > We need some different logic for determining when the schema is propagated. > I haven't tested, but I expect this issue appears in 2.0.5 too. -- This message was sent by Atlassian JIRA (v6.1.5#6160)
[jira] [Commented] (CASSANDRA-6685) Nodes never bootstrap if schema is empty
[ https://issues.apache.org/jira/browse/CASSANDRA-6685?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13900491#comment-13900491 ] Richard Low commented on CASSANDRA-6685: Here's the git commit: https://github.com/apache/cassandra/commit/c5627008a2c87ab960da98f4d5b8ca4aca6eebdd > Nodes never bootstrap if schema is empty > > > Key: CASSANDRA-6685 > URL: https://issues.apache.org/jira/browse/CASSANDRA-6685 > Project: Cassandra > Issue Type: Bug > Components: Core >Reporter: Richard Low >Assignee: Brandon Williams > Fix For: 1.2.16 > > > Since 1.2.15, bootstrap never completes if the schema is empty. The > bootstrapping node endlessly prints: > bq. {{INFO 12:37:44,863 JOINING: waiting for schema information to complete}} > until you add something to the schema (i.e. create a keyspace). > The problem looks to be caused by CASSANDRA-6648, where > MigrationManager.isReadForBootstrap() was changed to: > bq. {{return Schema.instance.getVersion() != null && > !Schema.emptyVersion.equals(Schema.instance.getVersion());}} > This is wrong since > {{Schema.emptyVersion.equals(Schema.instance.getVersion())}} is always true > if there is no schema. > We need some different logic for determining when the schema is propagated. > I haven't tested, but I expect this issue appears in 2.0.5 too. -- This message was sent by Atlassian JIRA (v6.1.5#6160)
[jira] [Commented] (CASSANDRA-6685) Nodes never bootstrap if schema is empty
[ https://issues.apache.org/jira/browse/CASSANDRA-6685?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13898598#comment-13898598 ] Edward Capriolo commented on CASSANDRA-6685: I am confused as to what was committed. No one mentioned a git hash or included a patch. > Nodes never bootstrap if schema is empty > > > Key: CASSANDRA-6685 > URL: https://issues.apache.org/jira/browse/CASSANDRA-6685 > Project: Cassandra > Issue Type: Bug > Components: Core >Reporter: Richard Low >Assignee: Brandon Williams > Fix For: 1.2.16 > > > Since 1.2.15, bootstrap never completes if the schema is empty. The > bootstrapping node endlessly prints: > bq. {{INFO 12:37:44,863 JOINING: waiting for schema information to complete}} > until you add something to the schema (i.e. create a keyspace). > The problem looks to be caused by CASSANDRA-6648, where > MigrationManager.isReadForBootstrap() was changed to: > bq. {{return Schema.instance.getVersion() != null && > !Schema.emptyVersion.equals(Schema.instance.getVersion());}} > This is wrong since > {{Schema.emptyVersion.equals(Schema.instance.getVersion())}} is always true > if there is no schema. > We need some different logic for determining when the schema is propagated. > I haven't tested, but I expect this issue appears in 2.0.5 too. -- This message was sent by Atlassian JIRA (v6.1.5#6160)
[jira] [Commented] (CASSANDRA-6685) Nodes never bootstrap if schema is empty
[ https://issues.apache.org/jira/browse/CASSANDRA-6685?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13896685#comment-13896685 ] Richard Low commented on CASSANDRA-6685: OK, +1 on your proposed fix then. Agreed auto_bootstrap is a workaround for the new cluster case. > Nodes never bootstrap if schema is empty > > > Key: CASSANDRA-6685 > URL: https://issues.apache.org/jira/browse/CASSANDRA-6685 > Project: Cassandra > Issue Type: Bug > Components: Core >Reporter: Richard Low > > Since 1.2.15, bootstrap never completes if the schema is empty. The > bootstrapping node endlessly prints: > bq. {{INFO 12:37:44,863 JOINING: waiting for schema information to complete}} > until you add something to the schema (i.e. create a keyspace). > The problem looks to be caused by CASSANDRA-6648, where > MigrationManager.isReadForBootstrap() was changed to: > bq. {{return Schema.instance.getVersion() != null && > !Schema.emptyVersion.equals(Schema.instance.getVersion());}} > This is wrong since > {{Schema.emptyVersion.equals(Schema.instance.getVersion())}} is always true > if there is no schema. > We need some different logic for determining when the schema is propagated. > I haven't tested, but I expect this issue appears in 2.0.5 too. -- This message was sent by Atlassian JIRA (v6.1.5#6160)
[jira] [Commented] (CASSANDRA-6685) Nodes never bootstrap if schema is empty
[ https://issues.apache.org/jira/browse/CASSANDRA-6685?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13896657#comment-13896657 ] Brandon Williams commented on CASSANDRA-6685: - bq. Wasn't this change made to guard against the case when schema messages get delayed and responses aren't received before bootstrap begins? It was an extra guard, which is apparently slightly flawed. The heart of the problem in 6648 was the event to check if pulling was needing firing too early, and not pulling because the remote node was known to be part of the ring yet and thus considered a fat client. bq. For more than a few nodes, people won't list all nodes as a seed and, with this issue, non-seed nodes won't join until a keyspace is created. {noformat}auto_bootstrap = false{noformat} will not only solve this, but also skip the ring delay sleep and be much faster. > Nodes never bootstrap if schema is empty > > > Key: CASSANDRA-6685 > URL: https://issues.apache.org/jira/browse/CASSANDRA-6685 > Project: Cassandra > Issue Type: Bug > Components: Core >Reporter: Richard Low > > Since 1.2.15, bootstrap never completes if the schema is empty. The > bootstrapping node endlessly prints: > bq. {{INFO 12:37:44,863 JOINING: waiting for schema information to complete}} > until you add something to the schema (i.e. create a keyspace). > The problem looks to be caused by CASSANDRA-6648, where > MigrationManager.isReadForBootstrap() was changed to: > bq. {{return Schema.instance.getVersion() != null && > !Schema.emptyVersion.equals(Schema.instance.getVersion());}} > This is wrong since > {{Schema.emptyVersion.equals(Schema.instance.getVersion())}} is always true > if there is no schema. > We need some different logic for determining when the schema is propagated. > I haven't tested, but I expect this issue appears in 2.0.5 too. -- This message was sent by Atlassian JIRA (v6.1.5#6160)
[jira] [Commented] (CASSANDRA-6685) Nodes never bootstrap if schema is empty
[ https://issues.apache.org/jira/browse/CASSANDRA-6685?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13896648#comment-13896648 ] Richard Low commented on CASSANDRA-6685: Also I think the use case of bootstrapping without a schema is quite common when setting up a new cluster. For more than a few nodes, people won't list all nodes as a seed and, with this issue, non-seed nodes won't join until a keyspace is created. > Nodes never bootstrap if schema is empty > > > Key: CASSANDRA-6685 > URL: https://issues.apache.org/jira/browse/CASSANDRA-6685 > Project: Cassandra > Issue Type: Bug > Components: Core >Reporter: Richard Low > > Since 1.2.15, bootstrap never completes if the schema is empty. The > bootstrapping node endlessly prints: > bq. {{INFO 12:37:44,863 JOINING: waiting for schema information to complete}} > until you add something to the schema (i.e. create a keyspace). > The problem looks to be caused by CASSANDRA-6648, where > MigrationManager.isReadForBootstrap() was changed to: > bq. {{return Schema.instance.getVersion() != null && > !Schema.emptyVersion.equals(Schema.instance.getVersion());}} > This is wrong since > {{Schema.emptyVersion.equals(Schema.instance.getVersion())}} is always true > if there is no schema. > We need some different logic for determining when the schema is propagated. > I haven't tested, but I expect this issue appears in 2.0.5 too. -- This message was sent by Atlassian JIRA (v6.1.5#6160)
[jira] [Commented] (CASSANDRA-6685) Nodes never bootstrap if schema is empty
[ https://issues.apache.org/jira/browse/CASSANDRA-6685?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13896637#comment-13896637 ] Richard Low commented on CASSANDRA-6685: Wasn't this change made to guard against the case when schema messages get delayed and responses aren't received before bootstrap begins? > Nodes never bootstrap if schema is empty > > > Key: CASSANDRA-6685 > URL: https://issues.apache.org/jira/browse/CASSANDRA-6685 > Project: Cassandra > Issue Type: Bug > Components: Core >Reporter: Richard Low > > Since 1.2.15, bootstrap never completes if the schema is empty. The > bootstrapping node endlessly prints: > bq. {{INFO 12:37:44,863 JOINING: waiting for schema information to complete}} > until you add something to the schema (i.e. create a keyspace). > The problem looks to be caused by CASSANDRA-6648, where > MigrationManager.isReadForBootstrap() was changed to: > bq. {{return Schema.instance.getVersion() != null && > !Schema.emptyVersion.equals(Schema.instance.getVersion());}} > This is wrong since > {{Schema.emptyVersion.equals(Schema.instance.getVersion())}} is always true > if there is no schema. > We need some different logic for determining when the schema is propagated. > I haven't tested, but I expect this issue appears in 2.0.5 too. -- This message was sent by Atlassian JIRA (v6.1.5#6160)
[jira] [Commented] (CASSANDRA-6685) Nodes never bootstrap if schema is empty
[ https://issues.apache.org/jira/browse/CASSANDRA-6685?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13896624#comment-13896624 ] Richard Low commented on CASSANDRA-6685: I tested and this isn't reproduced in 2.0.5, because the system_traces keyspace is added to the schema, but it appears to be added differently in 1.2.x so doesn't modify the schema ID. > Nodes never bootstrap if schema is empty > > > Key: CASSANDRA-6685 > URL: https://issues.apache.org/jira/browse/CASSANDRA-6685 > Project: Cassandra > Issue Type: Bug > Components: Core >Reporter: Richard Low > > Since 1.2.15, bootstrap never completes if the schema is empty. The > bootstrapping node endlessly prints: > bq. {{INFO 12:37:44,863 JOINING: waiting for schema information to complete}} > until you add something to the schema (i.e. create a keyspace). > The problem looks to be caused by CASSANDRA-6648, where > MigrationManager.isReadForBootstrap() was changed to: > bq. {{return Schema.instance.getVersion() != null && > !Schema.emptyVersion.equals(Schema.instance.getVersion());}} > This is wrong since > {{Schema.emptyVersion.equals(Schema.instance.getVersion())}} is always true > if there is no schema. > We need some different logic for determining when the schema is propagated. > I haven't tested, but I expect this issue appears in 2.0.5 too. -- This message was sent by Atlassian JIRA (v6.1.5#6160)
[jira] [Commented] (CASSANDRA-6685) Nodes never bootstrap if schema is empty
[ https://issues.apache.org/jira/browse/CASSANDRA-6685?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13896621#comment-13896621 ] Brandon Williams commented on CASSANDRA-6685: - Luckily bootstrapping without schema isn't a huge problem or very common, but I propose fixing this by reverting the change in question, since that puts everything back the way it was except for moving the MM events, which solved CASSANDRA-6648. > Nodes never bootstrap if schema is empty > > > Key: CASSANDRA-6685 > URL: https://issues.apache.org/jira/browse/CASSANDRA-6685 > Project: Cassandra > Issue Type: Bug > Components: Core >Reporter: Richard Low > > Since 1.2.15, bootstrap never completes if the schema is empty. The > bootstrapping node endlessly prints: > bq. {{INFO 12:37:44,863 JOINING: waiting for schema information to complete}} > until you add something to the schema (i.e. create a keyspace). > The problem looks to be caused by CASSANDRA-6648, where > MigrationManager.isReadForBootstrap() was changed to: > bq. {{return Schema.instance.getVersion() != null && > !Schema.emptyVersion.equals(Schema.instance.getVersion());}} > This is wrong since > {{Schema.emptyVersion.equals(Schema.instance.getVersion())}} is always true > if there is no schema. > We need some different logic for determining when the schema is propagated. > I haven't tested, but I expect this issue appears in 2.0.5 too. -- This message was sent by Atlassian JIRA (v6.1.5#6160)