Description
Since 1.2.15, bootstrap never completes if the schema is empty. The bootstrapping node endlessly prints:
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:
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.