On Sun, Dec 15, 2024 at 12:29 PM Tom Lane <t...@sss.pgh.pa.us> wrote:
> Pavel Stehule <pavel.steh...@gmail.com> writes: > > ne 15. 12. 2024 v 17:59 odesílatel Ron Johnson <ronljohnso...@gmail.com> > > 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'); > 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!