From ac8a50618dc204e07f478395a48ca8e0aa953b0e Mon Sep 17 00:00:00 2001 From: lvhui Date: Mon, 7 Nov 2022 22:49:26 -0800 Subject: [PATCH 1/2] fix pg_get_tabledef handle default and on update feature --- src/common/backend/utils/adt/ruleutils.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/common/backend/utils/adt/ruleutils.cpp b/src/common/backend/utils/adt/ruleutils.cpp index 39f3327e6..7604245a2 100644 --- a/src/common/backend/utils/adt/ruleutils.cpp +++ b/src/common/backend/utils/adt/ruleutils.cpp @@ -1641,7 +1641,7 @@ static int get_table_attribute( find_nextval_seqoid_walker(adexpr, &tableinfo->autoinc_seqoid); tableinfo->autoinc_attnum = attrdef->adnum; appendStringInfo(buf, " %s", adsrc); - } else { + } else if (pg_strcasecmp(adsrc, "") != 0) { appendStringInfo(buf, " DEFAULT %s", adsrc); } if (isOnUpdate) { From 6ae1d04c72bd088021eb06d4ee335a8d5645c2de Mon Sep 17 00:00:00 2001 From: lvhui Date: Tue, 8 Nov 2022 00:24:26 -0800 Subject: [PATCH 2/2] fix pg_get_tabledef test case --- src/test/regress/expected/function_get_table_def.out | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/test/regress/expected/function_get_table_def.out b/src/test/regress/expected/function_get_table_def.out index b9251e628..6cc37c473 100644 --- a/src/test/regress/expected/function_get_table_def.out +++ b/src/test/regress/expected/function_get_table_def.out @@ -788,7 +788,7 @@ select * from pg_get_tabledef('test'); CREATE TABLE test ( + a integer, + b timestamp without time zone DEFAULT now() ON UPDATE CURRENT_TIMESTAMP,+ - c timestamp with time zone DEFAULT ON UPDATE CURRENT_TIMESTAMP(5) + + c timestamp with time zone ON UPDATE CURRENT_TIMESTAMP(5) + ) + WITH (orientation=row, compression=no); (1 row)