On Sun, Dec 15, 2024 at 12:29 PM Tom Lane <tgl@xxxxxxxxxxxxx> wrote:
Pavel Stehule <pavel.stehule@xxxxxxxxx> writes:
> ne 15. 12. 2024 v 17:59 odesílatel Ron Johnson <ronljohnsonjr@xxxxxxxxx>
> napsal:
>> A new boolean column named "indissystem" that's true only for system
>> relations would make *many* maintenance queries cleaner, since they'd
>> look like:
>> select ...
> oid of all system objects is less then 0x4000
That wouldn't help for excluding temp schemas, and it's not totally
trustworthy for information_schema either.
But I think the real problem with Ron's proposal is that it presumes
there is a one-size-fits-all notion of "system schema". As a
counterexample, for some maintenance activities (such as vacuuming)
you might wish to process pg_catalog.
In that case, one would explicitly mention pg_catalog, no?
where cl.relnamespace = nsp.oid
and (nsp.indissystem = false or nsp.nspname = 'pg_catalog');
and (nsp.indissystem = false or nsp.nspname = 'pg_catalog');
What I'd suggest as an improvement that could be implemented
immediately is to wrap the checks in a user-defined function
like "is_system_schema(nspname name)".
Good idea.
Death to <Redacted>, and butter sauce.
Don't boil me, I'm still alive.
<Redacted> lobster!