Mark connected relations as not auto-converted, if the relation is already converted

talha_tes1
Ahmet Gedemenli 2021-10-21 17:49:56 +03:00
parent dbebb81e1f
commit 95021cfb55
1 changed files with 14 additions and 0 deletions

View File

@ -215,6 +215,20 @@ CreateCitusLocalTable(Oid relationId, bool cascadeViaForeignKeys, bool autoConve
*/
SetLocalExecutionStatus(LOCAL_EXECUTION_REQUIRED);
if (IsCitusTable(relationId) && IsCitusTableType(relationId, CITUS_LOCAL_TABLE) &&
!autoConverted)
{
/* we should mark this relation and connected ones as autoConverted = false */
List *relationIdList = GetForeignKeyConnectedRelationIdList(relationId);
Oid relid = InvalidOid;
foreach_oid(relid, relationIdList)
{
UpdatePartitionAutoConverted(relid, autoConverted);
}
return;
}
/*
* Lock target relation with an AccessExclusiveLock as we don't want
* multiple backends manipulating this relation. We could actually simply