On Wed, Jan 9, 2019 at 2:44 PM Tom Lane <[email protected]> wrote:
> [patch to shrink oid index]
It would help maintaining its newfound sveltness if we warned if a
higher oid was assigned, as in the attached. I used 6200 as a soft
limit, but that could be anything similiar.
--
John Naylor https://www.2ndQuadrant.com/
PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services
diff --git a/src/backend/catalog/genbki.pl b/src/backend/catalog/genbki.pl
index e7ead7dcc0..201343c2f6 100644
--- a/src/backend/catalog/genbki.pl
+++ b/src/backend/catalog/genbki.pl
@@ -74,6 +74,7 @@ my %catalog_data;
my @toast_decls;
my @index_decls;
my %oidcounts;
+my $max_proc_oid = 6200;
foreach my $header (@input_files)
{
@@ -230,6 +231,13 @@ foreach my $row (@{ $catalog_data{pg_opfamily} })
my %procoids;
foreach my $row (@{ $catalog_data{pg_proc} })
{
+ # Warn if a large OID has been newly assigned.
+ if ($row->{oid} > $max_proc_oid)
+ {
+ warn sprintf "Consider using an OID smaller than %d for %s (see commit 8ff5f824dca75)\n",
+ $max_proc_oid, $row->{proname};
+ }
+
# Generate an entry under just the proname (corresponds to regproc lookup)
my $prokey = $row->{proname};
if (defined $procoids{$prokey})