You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by sl...@apache.org on 2017/01/16 09:51:07 UTC
[09/16] cassandra git commit: Use timestamp from ClientState by
default in AlterTableStatement
Use timestamp from ClientState by default in AlterTableStatement
patch by Sylvain Lebresne; reviewed by Aleksey Yeschenko for CASSANDRA-12997
Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/806ac77e
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/806ac77e
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/806ac77e
Branch: refs/heads/trunk
Commit: 806ac77eeb4e0589a3afab128b2ac9056084989b
Parents: 6504946
Author: Sylvain Lebresne <sy...@datastax.com>
Authored: Tue Dec 6 16:04:01 2016 +0100
Committer: Sylvain Lebresne <sy...@datastax.com>
Committed: Mon Jan 16 10:42:23 2017 +0100
----------------------------------------------------------------------
.../cassandra/cql3/statements/AlterKeyspaceStatement.java | 3 ++-
.../cassandra/cql3/statements/AlterTableStatement.java | 10 +++++-----
.../cassandra/cql3/statements/AlterTypeStatement.java | 3 ++-
.../cassandra/cql3/statements/AlterViewStatement.java | 3 ++-
.../cql3/statements/CreateAggregateStatement.java | 2 +-
.../cql3/statements/CreateFunctionStatement.java | 2 +-
.../cassandra/cql3/statements/CreateIndexStatement.java | 3 ++-
.../cql3/statements/CreateKeyspaceStatement.java | 2 +-
.../cassandra/cql3/statements/CreateTableStatement.java | 2 +-
.../cassandra/cql3/statements/CreateTriggerStatement.java | 3 ++-
.../cassandra/cql3/statements/CreateTypeStatement.java | 3 ++-
.../cassandra/cql3/statements/CreateViewStatement.java | 3 ++-
.../cassandra/cql3/statements/DropAggregateStatement.java | 3 ++-
.../cassandra/cql3/statements/DropFunctionStatement.java | 3 ++-
.../cassandra/cql3/statements/DropIndexStatement.java | 4 ++--
.../cassandra/cql3/statements/DropKeyspaceStatement.java | 3 ++-
.../cassandra/cql3/statements/DropTableStatement.java | 3 ++-
.../cassandra/cql3/statements/DropTriggerStatement.java | 3 ++-
.../cassandra/cql3/statements/DropTypeStatement.java | 3 ++-
.../cassandra/cql3/statements/DropViewStatement.java | 3 ++-
.../cql3/statements/SchemaAlteringStatement.java | 6 +++---
21 files changed, 42 insertions(+), 28 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cassandra/blob/806ac77e/src/java/org/apache/cassandra/cql3/statements/AlterKeyspaceStatement.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/cql3/statements/AlterKeyspaceStatement.java b/src/java/org/apache/cassandra/cql3/statements/AlterKeyspaceStatement.java
index 5642b0d..be85fef 100644
--- a/src/java/org/apache/cassandra/cql3/statements/AlterKeyspaceStatement.java
+++ b/src/java/org/apache/cassandra/cql3/statements/AlterKeyspaceStatement.java
@@ -25,6 +25,7 @@ import org.apache.cassandra.schema.KeyspaceMetadata;
import org.apache.cassandra.schema.KeyspaceParams;
import org.apache.cassandra.service.ClientState;
import org.apache.cassandra.service.MigrationManager;
+import org.apache.cassandra.service.QueryState;
import org.apache.cassandra.transport.Event;
public class AlterKeyspaceStatement extends SchemaAlteringStatement
@@ -75,7 +76,7 @@ public class AlterKeyspaceStatement extends SchemaAlteringStatement
}
}
- public Event.SchemaChange announceMigration(boolean isLocalOnly) throws RequestValidationException
+ public Event.SchemaChange announceMigration(QueryState queryState, boolean isLocalOnly) throws RequestValidationException
{
KeyspaceMetadata oldKsm = Schema.instance.getKSMetaData(name);
// In the (very) unlikely case the keyspace was dropped since validate()
http://git-wip-us.apache.org/repos/asf/cassandra/blob/806ac77e/src/java/org/apache/cassandra/cql3/statements/AlterTableStatement.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/cql3/statements/AlterTableStatement.java b/src/java/org/apache/cassandra/cql3/statements/AlterTableStatement.java
index d64e541..6210d16 100644
--- a/src/java/org/apache/cassandra/cql3/statements/AlterTableStatement.java
+++ b/src/java/org/apache/cassandra/cql3/statements/AlterTableStatement.java
@@ -40,8 +40,8 @@ import org.apache.cassandra.schema.Indexes;
import org.apache.cassandra.schema.TableParams;
import org.apache.cassandra.service.ClientState;
import org.apache.cassandra.service.MigrationManager;
+import org.apache.cassandra.service.QueryState;
import org.apache.cassandra.transport.Event;
-import org.apache.cassandra.utils.FBUtilities;
import static org.apache.cassandra.thrift.ThriftValidation.validateColumnFamily;
@@ -58,7 +58,7 @@ public class AlterTableStatement extends SchemaAlteringStatement
private final TableAttributes attrs;
private final Map<ColumnIdentifier.Raw, ColumnIdentifier.Raw> renames;
private final boolean isStatic; // Only for ALTER ADD
- private final long deleteTimestamp;
+ private final Long deleteTimestamp;
public AlterTableStatement(CFName name,
Type type,
@@ -76,7 +76,7 @@ public class AlterTableStatement extends SchemaAlteringStatement
this.attrs = attrs;
this.renames = renames;
this.isStatic = isStatic;
- this.deleteTimestamp = deleteTimestamp == null ? FBUtilities.timestampMicros() : deleteTimestamp;
+ this.deleteTimestamp = deleteTimestamp;
}
public void checkAccess(ClientState state) throws UnauthorizedException, InvalidRequestException
@@ -89,7 +89,7 @@ public class AlterTableStatement extends SchemaAlteringStatement
// validated in announceMigration()
}
- public Event.SchemaChange announceMigration(boolean isLocalOnly) throws RequestValidationException
+ public Event.SchemaChange announceMigration(QueryState queryState, boolean isLocalOnly) throws RequestValidationException
{
CFMetaData meta = validateColumnFamily(keyspace(), columnFamily());
if (meta.isView())
@@ -242,7 +242,7 @@ public class AlterTableStatement extends SchemaAlteringStatement
}
assert toDelete != null;
cfm.removeColumnDefinition(toDelete);
- cfm.recordColumnDrop(toDelete, deleteTimestamp);
+ cfm.recordColumnDrop(toDelete, deleteTimestamp == null ? queryState.getTimestamp() : deleteTimestamp);
break;
}
http://git-wip-us.apache.org/repos/asf/cassandra/blob/806ac77e/src/java/org/apache/cassandra/cql3/statements/AlterTypeStatement.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/cql3/statements/AlterTypeStatement.java b/src/java/org/apache/cassandra/cql3/statements/AlterTypeStatement.java
index bd23971..4cac3b3 100644
--- a/src/java/org/apache/cassandra/cql3/statements/AlterTypeStatement.java
+++ b/src/java/org/apache/cassandra/cql3/statements/AlterTypeStatement.java
@@ -28,6 +28,7 @@ import org.apache.cassandra.exceptions.*;
import org.apache.cassandra.schema.KeyspaceMetadata;
import org.apache.cassandra.service.ClientState;
import org.apache.cassandra.service.MigrationManager;
+import org.apache.cassandra.service.QueryState;
import org.apache.cassandra.transport.Event;
public abstract class AlterTypeStatement extends SchemaAlteringStatement
@@ -83,7 +84,7 @@ public abstract class AlterTypeStatement extends SchemaAlteringStatement
return name.getKeyspace();
}
- public Event.SchemaChange announceMigration(boolean isLocalOnly) throws InvalidRequestException, ConfigurationException
+ public Event.SchemaChange announceMigration(QueryState queryState, boolean isLocalOnly) throws InvalidRequestException, ConfigurationException
{
KeyspaceMetadata ksm = Schema.instance.getKSMetaData(name.getKeyspace());
if (ksm == null)
http://git-wip-us.apache.org/repos/asf/cassandra/blob/806ac77e/src/java/org/apache/cassandra/cql3/statements/AlterViewStatement.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/cql3/statements/AlterViewStatement.java b/src/java/org/apache/cassandra/cql3/statements/AlterViewStatement.java
index ba077c7..ea87cfd 100644
--- a/src/java/org/apache/cassandra/cql3/statements/AlterViewStatement.java
+++ b/src/java/org/apache/cassandra/cql3/statements/AlterViewStatement.java
@@ -29,6 +29,7 @@ import org.apache.cassandra.exceptions.UnauthorizedException;
import org.apache.cassandra.schema.TableParams;
import org.apache.cassandra.service.ClientState;
import org.apache.cassandra.service.MigrationManager;
+import org.apache.cassandra.service.QueryState;
import org.apache.cassandra.transport.Event;
import static org.apache.cassandra.thrift.ThriftValidation.validateColumnFamily;
@@ -55,7 +56,7 @@ public class AlterViewStatement extends SchemaAlteringStatement
// validated in announceMigration()
}
- public Event.SchemaChange announceMigration(boolean isLocalOnly) throws RequestValidationException
+ public Event.SchemaChange announceMigration(QueryState queryState, boolean isLocalOnly) throws RequestValidationException
{
CFMetaData meta = validateColumnFamily(keyspace(), columnFamily());
if (!meta.isView())
http://git-wip-us.apache.org/repos/asf/cassandra/blob/806ac77e/src/java/org/apache/cassandra/cql3/statements/CreateAggregateStatement.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/cql3/statements/CreateAggregateStatement.java b/src/java/org/apache/cassandra/cql3/statements/CreateAggregateStatement.java
index 98e2433..ca0270f 100644
--- a/src/java/org/apache/cassandra/cql3/statements/CreateAggregateStatement.java
+++ b/src/java/org/apache/cassandra/cql3/statements/CreateAggregateStatement.java
@@ -208,7 +208,7 @@ public final class CreateAggregateStatement extends SchemaAlteringStatement
throw new InvalidRequestException(String.format("Cannot add aggregate '%s' to non existing keyspace '%s'.", functionName.name, functionName.keyspace));
}
- public Event.SchemaChange announceMigration(boolean isLocalOnly) throws RequestValidationException
+ public Event.SchemaChange announceMigration(QueryState queryState, boolean isLocalOnly) throws RequestValidationException
{
Function old = Schema.instance.findFunction(functionName, argTypes).orElse(null);
boolean replaced = old != null;
http://git-wip-us.apache.org/repos/asf/cassandra/blob/806ac77e/src/java/org/apache/cassandra/cql3/statements/CreateFunctionStatement.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/cql3/statements/CreateFunctionStatement.java b/src/java/org/apache/cassandra/cql3/statements/CreateFunctionStatement.java
index a54c49e..c8d38f5 100644
--- a/src/java/org/apache/cassandra/cql3/statements/CreateFunctionStatement.java
+++ b/src/java/org/apache/cassandra/cql3/statements/CreateFunctionStatement.java
@@ -138,7 +138,7 @@ public final class CreateFunctionStatement extends SchemaAlteringStatement
throw new InvalidRequestException(String.format("Cannot add function '%s' to non existing keyspace '%s'.", functionName.name, functionName.keyspace));
}
- public Event.SchemaChange announceMigration(boolean isLocalOnly) throws RequestValidationException
+ public Event.SchemaChange announceMigration(QueryState queryState, boolean isLocalOnly) throws RequestValidationException
{
Function old = Schema.instance.findFunction(functionName, argTypes).orElse(null);
boolean replaced = old != null;
http://git-wip-us.apache.org/repos/asf/cassandra/blob/806ac77e/src/java/org/apache/cassandra/cql3/statements/CreateIndexStatement.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/cql3/statements/CreateIndexStatement.java b/src/java/org/apache/cassandra/cql3/statements/CreateIndexStatement.java
index 2eebe0d..c21441c 100644
--- a/src/java/org/apache/cassandra/cql3/statements/CreateIndexStatement.java
+++ b/src/java/org/apache/cassandra/cql3/statements/CreateIndexStatement.java
@@ -40,6 +40,7 @@ import org.apache.cassandra.schema.IndexMetadata;
import org.apache.cassandra.schema.Indexes;
import org.apache.cassandra.service.ClientState;
import org.apache.cassandra.service.MigrationManager;
+import org.apache.cassandra.service.QueryState;
import org.apache.cassandra.thrift.ThriftValidation;
import org.apache.cassandra.transport.Event;
@@ -188,7 +189,7 @@ public class CreateIndexStatement extends SchemaAlteringStatement
throw new InvalidRequestException("Duplicate column " + target.column + " in index target list");
}
- public Event.SchemaChange announceMigration(boolean isLocalOnly) throws RequestValidationException
+ public Event.SchemaChange announceMigration(QueryState queryState, boolean isLocalOnly) throws RequestValidationException
{
CFMetaData cfm = Schema.instance.getCFMetaData(keyspace(), columnFamily()).copy();
List<IndexTarget> targets = new ArrayList<>(rawTargets.size());
http://git-wip-us.apache.org/repos/asf/cassandra/blob/806ac77e/src/java/org/apache/cassandra/cql3/statements/CreateKeyspaceStatement.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/cql3/statements/CreateKeyspaceStatement.java b/src/java/org/apache/cassandra/cql3/statements/CreateKeyspaceStatement.java
index 3eb0ac9..787dc73 100644
--- a/src/java/org/apache/cassandra/cql3/statements/CreateKeyspaceStatement.java
+++ b/src/java/org/apache/cassandra/cql3/statements/CreateKeyspaceStatement.java
@@ -92,7 +92,7 @@ public class CreateKeyspaceStatement extends SchemaAlteringStatement
throw new ConfigurationException("Unable to use given strategy class: LocalStrategy is reserved for internal use.");
}
- public Event.SchemaChange announceMigration(boolean isLocalOnly) throws RequestValidationException
+ public Event.SchemaChange announceMigration(QueryState queryState, boolean isLocalOnly) throws RequestValidationException
{
KeyspaceMetadata ksm = KeyspaceMetadata.create(name, attrs.asNewKeyspaceParams());
try
http://git-wip-us.apache.org/repos/asf/cassandra/blob/806ac77e/src/java/org/apache/cassandra/cql3/statements/CreateTableStatement.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/cql3/statements/CreateTableStatement.java b/src/java/org/apache/cassandra/cql3/statements/CreateTableStatement.java
index 04f76d3..ef950dc 100644
--- a/src/java/org/apache/cassandra/cql3/statements/CreateTableStatement.java
+++ b/src/java/org/apache/cassandra/cql3/statements/CreateTableStatement.java
@@ -80,7 +80,7 @@ public class CreateTableStatement extends SchemaAlteringStatement
// validated in announceMigration()
}
- public Event.SchemaChange announceMigration(boolean isLocalOnly) throws RequestValidationException
+ public Event.SchemaChange announceMigration(QueryState queryState, boolean isLocalOnly) throws RequestValidationException
{
try
{
http://git-wip-us.apache.org/repos/asf/cassandra/blob/806ac77e/src/java/org/apache/cassandra/cql3/statements/CreateTriggerStatement.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/cql3/statements/CreateTriggerStatement.java b/src/java/org/apache/cassandra/cql3/statements/CreateTriggerStatement.java
index 94cfc15..5d29996 100644
--- a/src/java/org/apache/cassandra/cql3/statements/CreateTriggerStatement.java
+++ b/src/java/org/apache/cassandra/cql3/statements/CreateTriggerStatement.java
@@ -31,6 +31,7 @@ import org.apache.cassandra.schema.TriggerMetadata;
import org.apache.cassandra.schema.Triggers;
import org.apache.cassandra.service.ClientState;
import org.apache.cassandra.service.MigrationManager;
+import org.apache.cassandra.service.QueryState;
import org.apache.cassandra.thrift.ThriftValidation;
import org.apache.cassandra.transport.Event;
import org.apache.cassandra.triggers.TriggerExecutor;
@@ -72,7 +73,7 @@ public class CreateTriggerStatement extends SchemaAlteringStatement
}
}
- public Event.SchemaChange announceMigration(boolean isLocalOnly) throws ConfigurationException, InvalidRequestException
+ public Event.SchemaChange announceMigration(QueryState queryState, boolean isLocalOnly) throws ConfigurationException, InvalidRequestException
{
CFMetaData cfm = Schema.instance.getCFMetaData(keyspace(), columnFamily()).copy();
Triggers triggers = cfm.getTriggers();
http://git-wip-us.apache.org/repos/asf/cassandra/blob/806ac77e/src/java/org/apache/cassandra/cql3/statements/CreateTypeStatement.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/cql3/statements/CreateTypeStatement.java b/src/java/org/apache/cassandra/cql3/statements/CreateTypeStatement.java
index f62b9ea..e7f8feb 100644
--- a/src/java/org/apache/cassandra/cql3/statements/CreateTypeStatement.java
+++ b/src/java/org/apache/cassandra/cql3/statements/CreateTypeStatement.java
@@ -30,6 +30,7 @@ import org.apache.cassandra.exceptions.*;
import org.apache.cassandra.schema.KeyspaceMetadata;
import org.apache.cassandra.service.ClientState;
import org.apache.cassandra.service.MigrationManager;
+import org.apache.cassandra.service.QueryState;
import org.apache.cassandra.transport.Event;
public class CreateTypeStatement extends SchemaAlteringStatement
@@ -112,7 +113,7 @@ public class CreateTypeStatement extends SchemaAlteringStatement
return new UserType(name.getKeyspace(), name.getUserTypeName(), names, types);
}
- public Event.SchemaChange announceMigration(boolean isLocalOnly) throws InvalidRequestException, ConfigurationException
+ public Event.SchemaChange announceMigration(QueryState queryState, boolean isLocalOnly) throws InvalidRequestException, ConfigurationException
{
KeyspaceMetadata ksm = Schema.instance.getKSMetaData(name.getKeyspace());
assert ksm != null; // should haven't validate otherwise
http://git-wip-us.apache.org/repos/asf/cassandra/blob/806ac77e/src/java/org/apache/cassandra/cql3/statements/CreateViewStatement.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/cql3/statements/CreateViewStatement.java b/src/java/org/apache/cassandra/cql3/statements/CreateViewStatement.java
index 30e55a0..708d551 100644
--- a/src/java/org/apache/cassandra/cql3/statements/CreateViewStatement.java
+++ b/src/java/org/apache/cassandra/cql3/statements/CreateViewStatement.java
@@ -43,6 +43,7 @@ import org.apache.cassandra.schema.TableParams;
import org.apache.cassandra.service.ClientState;
import org.apache.cassandra.service.ClientWarn;
import org.apache.cassandra.service.MigrationManager;
+import org.apache.cassandra.service.QueryState;
import org.apache.cassandra.thrift.ThriftValidation;
import org.apache.cassandra.transport.Event;
@@ -111,7 +112,7 @@ public class CreateViewStatement extends SchemaAlteringStatement
}
}
- public Event.SchemaChange announceMigration(boolean isLocalOnly) throws RequestValidationException
+ public Event.SchemaChange announceMigration(QueryState queryState, boolean isLocalOnly) throws RequestValidationException
{
// We need to make sure that:
// - primary key includes all columns in base table's primary key
http://git-wip-us.apache.org/repos/asf/cassandra/blob/806ac77e/src/java/org/apache/cassandra/cql3/statements/DropAggregateStatement.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/cql3/statements/DropAggregateStatement.java b/src/java/org/apache/cassandra/cql3/statements/DropAggregateStatement.java
index 2b1432b..ae8ad8c 100644
--- a/src/java/org/apache/cassandra/cql3/statements/DropAggregateStatement.java
+++ b/src/java/org/apache/cassandra/cql3/statements/DropAggregateStatement.java
@@ -31,6 +31,7 @@ import org.apache.cassandra.exceptions.RequestValidationException;
import org.apache.cassandra.exceptions.UnauthorizedException;
import org.apache.cassandra.service.ClientState;
import org.apache.cassandra.service.MigrationManager;
+import org.apache.cassandra.service.QueryState;
import org.apache.cassandra.thrift.ThriftValidation;
import org.apache.cassandra.transport.Event;
@@ -77,7 +78,7 @@ public final class DropAggregateStatement extends SchemaAlteringStatement
{
}
- public Event.SchemaChange announceMigration(boolean isLocalOnly) throws RequestValidationException
+ public Event.SchemaChange announceMigration(QueryState queryState, boolean isLocalOnly) throws RequestValidationException
{
Collection<Function> olds = Schema.instance.getFunctions(functionName);
http://git-wip-us.apache.org/repos/asf/cassandra/blob/806ac77e/src/java/org/apache/cassandra/cql3/statements/DropFunctionStatement.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/cql3/statements/DropFunctionStatement.java b/src/java/org/apache/cassandra/cql3/statements/DropFunctionStatement.java
index 6f11f9c..138691e 100644
--- a/src/java/org/apache/cassandra/cql3/statements/DropFunctionStatement.java
+++ b/src/java/org/apache/cassandra/cql3/statements/DropFunctionStatement.java
@@ -35,6 +35,7 @@ import org.apache.cassandra.exceptions.UnauthorizedException;
import org.apache.cassandra.schema.KeyspaceMetadata;
import org.apache.cassandra.service.ClientState;
import org.apache.cassandra.service.MigrationManager;
+import org.apache.cassandra.service.QueryState;
import org.apache.cassandra.thrift.ThriftValidation;
import org.apache.cassandra.transport.Event;
@@ -127,7 +128,7 @@ public final class DropFunctionStatement extends SchemaAlteringStatement
functionName, functionName, functionName));
}
- public Event.SchemaChange announceMigration(boolean isLocalOnly) throws RequestValidationException
+ public Event.SchemaChange announceMigration(QueryState queryState, boolean isLocalOnly) throws RequestValidationException
{
Function old = findFunction();
if (old == null)
http://git-wip-us.apache.org/repos/asf/cassandra/blob/806ac77e/src/java/org/apache/cassandra/cql3/statements/DropIndexStatement.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/cql3/statements/DropIndexStatement.java b/src/java/org/apache/cassandra/cql3/statements/DropIndexStatement.java
index 85f5f0d..35aee3c 100644
--- a/src/java/org/apache/cassandra/cql3/statements/DropIndexStatement.java
+++ b/src/java/org/apache/cassandra/cql3/statements/DropIndexStatement.java
@@ -66,11 +66,11 @@ public class DropIndexStatement extends SchemaAlteringStatement
@Override
public ResultMessage execute(QueryState state, QueryOptions options) throws RequestValidationException
{
- Event.SchemaChange ce = announceMigration(false);
+ Event.SchemaChange ce = announceMigration(state, false);
return ce == null ? null : new ResultMessage.SchemaChange(ce);
}
- public Event.SchemaChange announceMigration(boolean isLocalOnly) throws InvalidRequestException, ConfigurationException
+ public Event.SchemaChange announceMigration(QueryState queryState, boolean isLocalOnly) throws InvalidRequestException, ConfigurationException
{
CFMetaData cfm = lookupIndexedTable();
if (cfm == null)
http://git-wip-us.apache.org/repos/asf/cassandra/blob/806ac77e/src/java/org/apache/cassandra/cql3/statements/DropKeyspaceStatement.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/cql3/statements/DropKeyspaceStatement.java b/src/java/org/apache/cassandra/cql3/statements/DropKeyspaceStatement.java
index 513ff1b..9ba68a6 100644
--- a/src/java/org/apache/cassandra/cql3/statements/DropKeyspaceStatement.java
+++ b/src/java/org/apache/cassandra/cql3/statements/DropKeyspaceStatement.java
@@ -24,6 +24,7 @@ import org.apache.cassandra.auth.Permission;
import org.apache.cassandra.exceptions.UnauthorizedException;
import org.apache.cassandra.service.ClientState;
import org.apache.cassandra.service.MigrationManager;
+import org.apache.cassandra.service.QueryState;
import org.apache.cassandra.thrift.ThriftValidation;
import org.apache.cassandra.transport.Event;
@@ -55,7 +56,7 @@ public class DropKeyspaceStatement extends SchemaAlteringStatement
return keyspace;
}
- public Event.SchemaChange announceMigration(boolean isLocalOnly) throws ConfigurationException
+ public Event.SchemaChange announceMigration(QueryState queryState, boolean isLocalOnly) throws ConfigurationException
{
try
{
http://git-wip-us.apache.org/repos/asf/cassandra/blob/806ac77e/src/java/org/apache/cassandra/cql3/statements/DropTableStatement.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/cql3/statements/DropTableStatement.java b/src/java/org/apache/cassandra/cql3/statements/DropTableStatement.java
index 8e18cad..5641185 100644
--- a/src/java/org/apache/cassandra/cql3/statements/DropTableStatement.java
+++ b/src/java/org/apache/cassandra/cql3/statements/DropTableStatement.java
@@ -28,6 +28,7 @@ import org.apache.cassandra.exceptions.UnauthorizedException;
import org.apache.cassandra.schema.KeyspaceMetadata;
import org.apache.cassandra.service.ClientState;
import org.apache.cassandra.service.MigrationManager;
+import org.apache.cassandra.service.QueryState;
import org.apache.cassandra.transport.Event;
public class DropTableStatement extends SchemaAlteringStatement
@@ -58,7 +59,7 @@ public class DropTableStatement extends SchemaAlteringStatement
// validated in announceMigration()
}
- public Event.SchemaChange announceMigration(boolean isLocalOnly) throws ConfigurationException
+ public Event.SchemaChange announceMigration(QueryState queryState, boolean isLocalOnly) throws ConfigurationException
{
try
{
http://git-wip-us.apache.org/repos/asf/cassandra/blob/806ac77e/src/java/org/apache/cassandra/cql3/statements/DropTriggerStatement.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/cql3/statements/DropTriggerStatement.java b/src/java/org/apache/cassandra/cql3/statements/DropTriggerStatement.java
index 3f61e01..162c736 100644
--- a/src/java/org/apache/cassandra/cql3/statements/DropTriggerStatement.java
+++ b/src/java/org/apache/cassandra/cql3/statements/DropTriggerStatement.java
@@ -30,6 +30,7 @@ import org.apache.cassandra.exceptions.UnauthorizedException;
import org.apache.cassandra.schema.Triggers;
import org.apache.cassandra.service.ClientState;
import org.apache.cassandra.service.MigrationManager;
+import org.apache.cassandra.service.QueryState;
import org.apache.cassandra.thrift.ThriftValidation;
import org.apache.cassandra.transport.Event;
@@ -58,7 +59,7 @@ public class DropTriggerStatement extends SchemaAlteringStatement
ThriftValidation.validateColumnFamily(keyspace(), columnFamily());
}
- public Event.SchemaChange announceMigration(boolean isLocalOnly) throws ConfigurationException, InvalidRequestException
+ public Event.SchemaChange announceMigration(QueryState queryState, boolean isLocalOnly) throws ConfigurationException, InvalidRequestException
{
CFMetaData cfm = Schema.instance.getCFMetaData(keyspace(), columnFamily()).copy();
Triggers triggers = cfm.getTriggers();
http://git-wip-us.apache.org/repos/asf/cassandra/blob/806ac77e/src/java/org/apache/cassandra/cql3/statements/DropTypeStatement.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/cql3/statements/DropTypeStatement.java b/src/java/org/apache/cassandra/cql3/statements/DropTypeStatement.java
index 00988af..cd6daae 100644
--- a/src/java/org/apache/cassandra/cql3/statements/DropTypeStatement.java
+++ b/src/java/org/apache/cassandra/cql3/statements/DropTypeStatement.java
@@ -26,6 +26,7 @@ import org.apache.cassandra.exceptions.*;
import org.apache.cassandra.schema.KeyspaceMetadata;
import org.apache.cassandra.service.ClientState;
import org.apache.cassandra.service.MigrationManager;
+import org.apache.cassandra.service.QueryState;
import org.apache.cassandra.transport.Event;
public class DropTypeStatement extends SchemaAlteringStatement
@@ -103,7 +104,7 @@ public class DropTypeStatement extends SchemaAlteringStatement
return name.getKeyspace();
}
- public Event.SchemaChange announceMigration(boolean isLocalOnly) throws InvalidRequestException, ConfigurationException
+ public Event.SchemaChange announceMigration(QueryState queryState, boolean isLocalOnly) throws InvalidRequestException, ConfigurationException
{
KeyspaceMetadata ksm = Schema.instance.getKSMetaData(name.getKeyspace());
if (ksm == null)
http://git-wip-us.apache.org/repos/asf/cassandra/blob/806ac77e/src/java/org/apache/cassandra/cql3/statements/DropViewStatement.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/cql3/statements/DropViewStatement.java b/src/java/org/apache/cassandra/cql3/statements/DropViewStatement.java
index 1f53ac4..b65c1b0 100644
--- a/src/java/org/apache/cassandra/cql3/statements/DropViewStatement.java
+++ b/src/java/org/apache/cassandra/cql3/statements/DropViewStatement.java
@@ -29,6 +29,7 @@ import org.apache.cassandra.exceptions.InvalidRequestException;
import org.apache.cassandra.exceptions.UnauthorizedException;
import org.apache.cassandra.service.ClientState;
import org.apache.cassandra.service.MigrationManager;
+import org.apache.cassandra.service.QueryState;
import org.apache.cassandra.transport.Event;
public class DropViewStatement extends SchemaAlteringStatement
@@ -53,7 +54,7 @@ public class DropViewStatement extends SchemaAlteringStatement
// validated in findIndexedCf()
}
- public Event.SchemaChange announceMigration(boolean isLocalOnly) throws InvalidRequestException, ConfigurationException
+ public Event.SchemaChange announceMigration(QueryState queryState, boolean isLocalOnly) throws InvalidRequestException, ConfigurationException
{
try
{
http://git-wip-us.apache.org/repos/asf/cassandra/blob/806ac77e/src/java/org/apache/cassandra/cql3/statements/SchemaAlteringStatement.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/cql3/statements/SchemaAlteringStatement.java b/src/java/org/apache/cassandra/cql3/statements/SchemaAlteringStatement.java
index 10c004c..62ba0ae 100644
--- a/src/java/org/apache/cassandra/cql3/statements/SchemaAlteringStatement.java
+++ b/src/java/org/apache/cassandra/cql3/statements/SchemaAlteringStatement.java
@@ -84,13 +84,13 @@ public abstract class SchemaAlteringStatement extends CFStatement implements CQL
*
* @throws RequestValidationException
*/
- public abstract Event.SchemaChange announceMigration(boolean isLocalOnly) throws RequestValidationException;
+ protected abstract Event.SchemaChange announceMigration(QueryState queryState, boolean isLocalOnly) throws RequestValidationException;
public ResultMessage execute(QueryState state, QueryOptions options) throws RequestValidationException
{
// If an IF [NOT] EXISTS clause was used, this may not result in an actual schema change. To avoid doing
// extra work in the drivers to handle schema changes, we return an empty message in this case. (CASSANDRA-7600)
- Event.SchemaChange ce = announceMigration(false);
+ Event.SchemaChange ce = announceMigration(state, false);
if (ce == null)
return new ResultMessage.Void();
@@ -117,7 +117,7 @@ public abstract class SchemaAlteringStatement extends CFStatement implements CQL
public ResultMessage executeInternal(QueryState state, QueryOptions options)
{
- Event.SchemaChange ce = announceMigration(true);
+ Event.SchemaChange ce = announceMigration(state, true);
return ce == null ? new ResultMessage.Void() : new ResultMessage.SchemaChange(ce);
}
}