aboutsummaryrefslogtreecommitdiff
path: root/src/backend
diff options
context:
space:
mode:
Diffstat (limited to 'src/backend')
-rw-r--r--src/backend/catalog/Catalog.pm11
-rw-r--r--src/backend/catalog/genbki.pl10
2 files changed, 21 insertions, 0 deletions
diff --git a/src/backend/catalog/Catalog.pm b/src/backend/catalog/Catalog.pm
index dbc3f87e28c..0275795dea4 100644
--- a/src/backend/catalog/Catalog.pm
+++ b/src/backend/catalog/Catalog.pm
@@ -94,6 +94,17 @@ sub ParseHeader
push @{ $catalog{toasting} },
{ parent_table => $1, toast_oid => $2, toast_index_oid => $3 };
}
+ elsif (/^DECLARE_TOAST_WITH_MACRO\(\s*(\w+),\s*(\d+),\s*(\d+),\s*(\w+),\s*(\w+)\)/)
+ {
+ push @{ $catalog{toasting} },
+ {
+ parent_table => $1,
+ toast_oid => $2,
+ toast_index_oid => $3,
+ toast_oid_macro => $4,
+ toast_index_oid_macro => $5
+ };
+ }
elsif (
/^DECLARE_(UNIQUE_)?INDEX(_PKEY)?\(\s*(\w+),\s*(\d+),\s*(\w+),\s*(.+)\)/)
{
diff --git a/src/backend/catalog/genbki.pl b/src/backend/catalog/genbki.pl
index 2dfcdc5dad5..2d02b022670 100644
--- a/src/backend/catalog/genbki.pl
+++ b/src/backend/catalog/genbki.pl
@@ -472,6 +472,16 @@ EOM
$catalog->{rowtype_oid_macro}, $catalog->{rowtype_oid}
if $catalog->{rowtype_oid_macro};
+ # Likewise for macros for toast and index OIDs
+ foreach my $toast (@{ $catalog->{toasting} })
+ {
+ printf $def "#define %s %s\n",
+ $toast->{toast_oid_macro}, $toast->{toast_oid}
+ if $toast->{toast_oid_macro};
+ printf $def "#define %s %s\n",
+ $toast->{toast_index_oid_macro}, $toast->{toast_index_oid}
+ if $toast->{toast_index_oid_macro};
+ }
foreach my $index (@{ $catalog->{indexing} })
{
printf $def "#define %s %s\n",