Thread: relhasexclusion is in the wrong place

relhasexclusion is in the wrong place

From
Tom Lane
Date:
I've just noticed that we were guilty of very sloppy thinking in
defining pg_class.relhasexclusion.  The only place that actually
*uses* that value, rather than jumping through hoops to maintain it,
is BuildIndexInfo --- and what it's looking at is not the pg_class
entry of the table, but the pg_class entry of the index.  There is
no need whatsoever to maintain such a flag at the table level.

This being the case, I think we should move the flag to pg_index
(and rename it to indisexclusion).  That will get rid of all the
semantic fuzziness around it, the need to update it in VACUUM,
etc.
        regards, tom lane