1
0
mirror of https://github.com/postgres/postgres.git synced 2025-07-28 23:42:10 +03:00

Replace pg_class.relhasexclusion with pg_index.indisexclusion.

There isn't any need to track this state on a table-wide basis, and trying
to do so introduces undesirable semantic fuzziness.  Move the flag to
pg_index, where it clearly describes just a single index and can be
immutable after index creation.
This commit is contained in:
Tom Lane
2011-01-25 17:51:59 -05:00
parent 88452d5ba6
commit bd1ad1b019
8 changed files with 52 additions and 77 deletions

View File

@ -1706,17 +1706,6 @@
</entry>
</row>
<row>
<entry><structfield>relhasexclusion</structfield></entry>
<entry><type>bool</type></entry>
<entry></entry>
<entry>
For a table, true if the table has (or once had) any exclusion
constraints; for an index, true if the index supports an exclusion
constraint
</entry>
</row>
<row>
<entry><structfield>relhasrules</structfield></entry>
<entry><type>bool</type></entry>
@ -2046,8 +2035,7 @@
<para>
<literal>pg_class.relchecks</literal> needs to agree with the
number of check-constraint entries found in this table for each
relation. Also, <literal>pg_class.relhasexclusion</literal> must
be true if there are any exclusion-constraint entries for the relation.
relation.
</para>
</note>
@ -3056,12 +3044,20 @@
(<structfield>indisunique</> should always be true when this is true)</entry>
</row>
<row>
<entry><structfield>indisexclusion</structfield></entry>
<entry><type>bool</type></entry>
<entry></entry>
<entry>If true, this index supports an exclusion constraint</entry>
</row>
<row>
<entry><structfield>indimmediate</structfield></entry>
<entry><type>bool</type></entry>
<entry></entry>
<entry>If true, the uniqueness check is enforced immediately on insertion
(<structfield>indisunique</> should always be true when this is true)</entry>
<entry>If true, the uniqueness check is enforced immediately on
insertion
(irrelevant if <structfield>indisunique</> is not true)</entry>
</row>
<row>