diff options
Diffstat (limited to 'src/backend')
-rw-r--r-- | src/backend/catalog/Catalog.pm | 11 | ||||
-rw-r--r-- | src/backend/catalog/genbki.pl | 10 |
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", |