propagate validate queries to workers

pull/2488/head
Hanefi Onaldi 2018-11-20 14:16:17 +03:00
parent 2afbb89673
commit 7db6991dc0
2 changed files with 11 additions and 4 deletions

View File

@ -1060,11 +1060,13 @@ ErrorIfUnsupportedAlterTableStmt(AlterTableStmt *alterTableStatement)
case AT_EnableTrigAll: case AT_EnableTrigAll:
case AT_DisableTrigAll: case AT_DisableTrigAll:
case AT_ReplicaIdentity: case AT_ReplicaIdentity:
case AT_ValidateConstraint:
{ {
/* /*
* We will not perform any special check for ALTER TABLE DROP CONSTRAINT * We will not perform any special check for ALTER TABLE DROP CONSTRAINT
* , ALTER TABLE .. ALTER COLUMN .. SET NOT NULL and ALTER TABLE ENABLE/ * , ALTER TABLE .. ALTER COLUMN .. SET NOT NULL and ALTER TABLE ENABLE/
* DISABLE TRIGGER ALL, ALTER TABLE .. REPLICA IDENTITY .. * DISABLE TRIGGER ALL, ALTER TABLE .. REPLICA IDENTITY .., ALTER TABLE
* .. VALIDATE CONSTRAINT ..
*/ */
break; break;
} }
@ -1083,7 +1085,7 @@ ErrorIfUnsupportedAlterTableStmt(AlterTableStmt *alterTableStatement)
(errcode(ERRCODE_FEATURE_NOT_SUPPORTED), (errcode(ERRCODE_FEATURE_NOT_SUPPORTED),
errmsg("alter table command is currently unsupported"), errmsg("alter table command is currently unsupported"),
errdetail("Only ADD|DROP COLUMN, SET|DROP NOT NULL, " errdetail("Only ADD|DROP COLUMN, SET|DROP NOT NULL, "
"SET|DROP DEFAULT, ADD|DROP CONSTRAINT, " "SET|DROP DEFAULT, ADD|DROP|VALIDATE CONSTRAINT, "
"SET (), RESET (), " "SET (), RESET (), "
"ATTACH|DETACH PARTITION and TYPE subcommands " "ATTACH|DETACH PARTITION and TYPE subcommands "
"are supported."))); "are supported.")));

View File

@ -113,7 +113,11 @@ RelayEventExtendNames(Node *parseTree, char *schemaName, uint64 shardId)
AppendShardIdToConstraintName(command, shardId); AppendShardIdToConstraintName(command, shardId);
} }
if (command->subtype == AT_DropConstraint) else if (command->subtype == AT_DropConstraint)
{
AppendShardIdToConstraintName(command, shardId);
}
else if (command->subtype == AT_ValidateConstraint)
{ {
AppendShardIdToConstraintName(command, shardId); AppendShardIdToConstraintName(command, shardId);
} }
@ -598,7 +602,8 @@ AppendShardIdToConstraintName(AlterTableCmd *command, uint64 shardId)
char **constraintName = &(constraint->conname); char **constraintName = &(constraint->conname);
AppendShardIdToName(constraintName, shardId); AppendShardIdToName(constraintName, shardId);
} }
else if (command->subtype == AT_DropConstraint) else if (command->subtype == AT_DropConstraint ||
command->subtype == AT_ValidateConstraint)
{ {
char **constraintName = &(command->name); char **constraintName = &(command->name);
AppendShardIdToName(constraintName, shardId); AppendShardIdToName(constraintName, shardId);