"Matthew Churcher" <Matthew.Churcher@realvnc.com> writes:
> The triggers are being used to track changes to the tables. The developers
> are concerned that using string references for the table names in this case
> would create too much overhead as this is a frequent operation and is
> performance critical.
"Premature optimization is the root of all evil". Do you have any
actual evidence that you bought a meaningful amount of performance
with this idea? It seems like a terrible restriction from here
--- for instance, you are absolutely locked out of doing plain
dump and restore.
> Sounds like we have the choice of using string names or implementing a
> custom migration script.
pg_upgrade might save your bacon here. But I'd rewrite that code ASAP.
The fact that pg_upgrade preserves table OIDs is an implementation
detail, not a feature we promise to preserve.
regards, tom lane