ustore支持deferrable constraints
This commit is contained in:
@ -132,7 +132,7 @@ Datum unique_key_recheck(PG_FUNCTION_ARGS)
|
||||
}
|
||||
fakeRel = RELATION_GET_BUCKET_REL(fakeRel, bucketid);
|
||||
|
||||
if (!heap_hot_search(&tmptid, fakeRel, SnapshotSelf, NULL)) {
|
||||
if (!TableIndexFetchTupleCheck(fakeRel, &tmptid, SnapshotSelf, NULL)) {
|
||||
/*
|
||||
* All rows in the HOT chain are dead, so skip the check.
|
||||
*/
|
||||
|
@ -797,15 +797,6 @@ ObjectAddress DefineIndex(Oid relationId, IndexStmt* stmt, Oid indexRelationId,
|
||||
if (has_dedup_opt) {
|
||||
elog(ERROR, "Index deduplication is not supported for ustore.");
|
||||
}
|
||||
if (stmt->deferrable == true) {
|
||||
ereport(ERROR,
|
||||
(errcode(ERRCODE_FEATURE_NOT_SUPPORTED),
|
||||
errmodule(MOD_EXECUTOR),
|
||||
errmsg("Ustore table does not support to set deferrable."),
|
||||
errdetail("N/A"),
|
||||
errcause("feature not supported"),
|
||||
erraction("check constraints of columns")));
|
||||
}
|
||||
}
|
||||
|
||||
if (strcmp(stmt->accessMethod, "ubtree") == 0 &&
|
||||
|
@ -14233,16 +14233,6 @@ static ObjectAddress ATExecAddConstraint(List** wqueue, AlteredTableInfo* tab, R
|
||||
(errcode(ERRCODE_FEATURE_NOT_SUPPORTED),
|
||||
errmsg("column store unsupport constraint \"%s\"", GetConstraintType(newConstraint->contype))));
|
||||
|
||||
if (rel->rd_tam_ops == TableAmUstore && newConstraint->deferrable == true) {
|
||||
ereport(ERROR,
|
||||
(errcode(ERRCODE_FEATURE_NOT_SUPPORTED),
|
||||
errmodule(MOD_COMMAND),
|
||||
errmsg("Ustore table does not support to set deferrable."),
|
||||
errdetail("N/A"),
|
||||
errcause("feature not supported"),
|
||||
erraction("check constraints of columns")));
|
||||
}
|
||||
|
||||
/*
|
||||
* Currently, we only expect to see CONSTR_CHECK and CONSTR_FOREIGN nodes
|
||||
* arriving here (see the preprocessing done in parse_utilcmd.c). Use a
|
||||
|
@ -34,9 +34,9 @@ test: median deferrable
|
||||
test: gsql
|
||||
|
||||
test: pg_job
|
||||
test: hw_subpartition_prepare
|
||||
# test: hw_subpartition_prepare
|
||||
test: hw_subpartition_createtable hw_subpartition_scan hw_subpartition_select hw_subpartition_split hw_subpartition_truncate hw_subpartition_update hw_subpartition_gpi hw_subpartition_analyze_vacuum hw_subpartition_alter_table
|
||||
test: hw_subpartition_clean
|
||||
# test: hw_subpartition_clean
|
||||
test: gs_dump_subpartition
|
||||
|
||||
# run tablespace by itself, and first, because it forces a checkpoint;
|
||||
@ -46,7 +46,7 @@ test: single_node_tablespace
|
||||
|
||||
#test startwith...connect by
|
||||
test: sw_prepare
|
||||
test: sw_basic sw_icbc sw_siblings sw_bugfix sw_by_rownum_level
|
||||
test: sw_basic sw_icbc sw_siblings sw_bugfix-1 sw_bugfix-2 sw_by_rownum_level
|
||||
test: sw_clearup
|
||||
|
||||
# ----------
|
||||
|
Reference in New Issue
Block a user