Don't crash on reference to an un-available system column.

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

Commit: 05ce4bf8b1d45cc55762fab627ea91d1ffbbdc03
Author: Tom Lane <tgl@sss.pgh.pa.us>
Date: 2021-04-22T21:30:42Z
Releases: 12.7
Don't crash on reference to an un-available system column.

Adopt a more consistent policy about what slot-type-specific
getsysattr functions should do when system attributes are not
available.  To wit, they should all throw the same user-oriented
error, rather than variously crashing or emitting developer-oriented
messages.

This closes a identifiable problem in commits a71cfc56b and
3fb93103a (in v13 and v12), so back-patch into those branches,
along with a test case to try to ensure we don't break it again.
It is not known that any of the former crash cases are reachable
in HEAD, but this seems like a good safety improvement in any case.

Discussion: https://postgr.es/m/141051591267657@mail.yandex.ru

Files

Discussion