From a29d206532a44f99457af9ddd81d2bc3ed65e63e Mon Sep 17 00:00:00 2001 From: Branimir Lambov Date: Tue, 15 Sep 2015 18:57:43 +0300 Subject: [PATCH] Follow-up to CASSANDRA-8143 stops Schema initializing tables in client mode patch by Branimir Lambov; reviewed by Aleksey Yeschenko for CASSANDRA-8143 --- .../org/apache/cassandra/config/Schema.java | 9 +- .../io/sstable/format/SSTableReader.java | 6 + .../sstable/format/ClientModeSSTableTest.java | 135 ++++++++++++++++++ 3 files changed, 147 insertions(+), 3 deletions(-) create mode 100644 test/unit/org/apache/cassandra/io/sstable/format/ClientModeSSTableTest.java diff --git a/src/java/org/apache/cassandra/config/Schema.java b/src/java/org/apache/cassandra/config/Schema.java index bcfac1b6f0..df4e984e77 100644 --- a/src/java/org/apache/cassandra/config/Schema.java +++ b/src/java/org/apache/cassandra/config/Schema.java @@ -91,8 +91,11 @@ public class Schema */ public Schema() { - load(SchemaKeyspace.metadata()); - load(SystemKeyspace.metadata()); + if (!Config.isClientMode()) + { + load(SchemaKeyspace.metadata()); + load(SystemKeyspace.metadata()); + } } /** @@ -581,7 +584,7 @@ public class Schema Keyspace.clear(ksm.name); clearKeyspaceMetadata(ksm); - keyspace.writeOrder.awaitNewBarrier(); + Keyspace.writeOrder.awaitNewBarrier(); // force a new segment in the CL CommitLog.instance.forceRecycleAllSegments(droppedCfs); diff --git a/src/java/org/apache/cassandra/io/sstable/format/SSTableReader.java b/src/java/org/apache/cassandra/io/sstable/format/SSTableReader.java index 04cdc21cda..ebf28a496c 100644 --- a/src/java/org/apache/cassandra/io/sstable/format/SSTableReader.java +++ b/src/java/org/apache/cassandra/io/sstable/format/SSTableReader.java @@ -370,6 +370,12 @@ public abstract class SSTableReader extends SSTable implements SelfRefCounted