pgsql: Fix infer_arbiter_indexes() to not barf on system columns. - Mailing list pgsql-committers

From Tom Lane
Subject pgsql: Fix infer_arbiter_indexes() to not barf on system columns.
Date
Msg-id E1b0bLR-0001jf-2R@gemulon.postgresql.org
Whole thread Raw
List pgsql-committers
Fix infer_arbiter_indexes() to not barf on system columns.

While it could be argued that rejecting system column mentions in the
ON CONFLICT list is an unsupported feature, falling over altogether
just because the table has a unique index on OID is indubitably a bug.

As far as I can tell, fixing infer_arbiter_indexes() is sufficient to
make ON CONFLICT (oid) actually work, though making a regression test
for that case is problematic because of the impossibility of setting
the OID counter to a known value.

Minor cosmetic cleanups along with the bug fix.

Branch
------
master

Details
-------
http://git.postgresql.org/pg/commitdiff/8a13d5e6d1bb9ff9460c72992657077e57e30c32

Modified Files
--------------
src/backend/optimizer/util/plancat.c | 43 ++++++++++++++----------------------
1 file changed, 16 insertions(+), 27 deletions(-)


pgsql-committers by date:

Previous
From: Peter Geoghegan
Date:
Subject: Re: pgsql: Fix assorted missing infrastructure for ON CONFLICT.
Next
From: Tom Lane
Date:
Subject: Re: pgsql: Fix assorted missing infrastructure for ON CONFLICT.