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