Обсуждение: Inconsistencies between dependency.c and objectaddress.c

Поиск
Список
Период
Сортировка

Inconsistencies between dependency.c and objectaddress.c

От
Tom Lane
Дата:
In <26527.1549572789@sss.pgh.pa.us> I speculated about adding a
function to objectaddress.c that would probe to see if an object
with a given ObjectAddress (still) exists.  I started to implement
this, but soon noticed that objectaddress.c doesn't cover all the
object classes that dependency.c knows.  This seems bad; is there
a reason for it?  The omitted object classes are

AccessMethodOperatorRelationId
AccessMethodProcedureRelationId
AttrDefaultRelationId
DefaultAclRelationId
PublicationRelRelationId
UserMappingRelationId

What's potentially a lot worse, the two subsystems do not agree
as to the object class OID to be used for large objects:
dependency.c has LargeObjectRelationId but what's in objectaddress.c
is LargeObjectMetadataRelationId.  How did we get to that, and why
isn't it causing serious problems?

            regards, tom lane