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_DisableTrigAll:
case AT_ReplicaIdentity:
case AT_ValidateConstraint:
{
/*
* We will not perform any special check for ALTER TABLE DROP CONSTRAINT
* , 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;
}
@ -1083,7 +1085,7 @@ ErrorIfUnsupportedAlterTableStmt(AlterTableStmt *alterTableStatement)
(errcode(ERRCODE_FEATURE_NOT_SUPPORTED),
errmsg("alter table command is currently unsupported"),
errdetail("Only ADD|DROP COLUMN, SET|DROP NOT NULL, "
"SET|DROP DEFAULT, ADD|DROP CONSTRAINT, "
"SET|DROP DEFAULT, ADD|DROP|VALIDATE CONSTRAINT, "
"SET (), RESET (), "
"ATTACH|DETACH PARTITION and TYPE subcommands "
"are supported.")));

View File

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