Unused entry in pg_opfamily

Tom Lane <tgl@sss.pgh.pa.us>

From: Tom Lane <tgl@sss.pgh.pa.us>
To: pgsql-hackers@lists.postgresql.org
Date: 2018-11-05T01:02:25Z
Lists: pgsql-hackers
I happened to notice that the pg_opfamily entry with OID 4035
(jsonb_ops for GIST) is not referenced anywhere; apparently it
was put in in anticipation of support that never materialized.
We still pass make check-world if it's removed.

Getting rid of it seems like a no-brainer, but it surprised me
a bit that none of our automated crosschecks had noticed this.
It looks like the reason is that all the amvalidate logic is
driven off pg_opclass entries, and so an opfamily that contains
no opclass is never examined.

We should, therefore, at least add an oprsanity check for
opfamilies without opclasses.  I wonder how far it's worth
going to check for other orphaned catalog entries.

			regards, tom lane


Commits

  1. Remove unreferenced pg_opfamily entry.