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!

Reply via email to