From: | Bharath Rupireddy <bharath(dot)rupireddyforpostgres(at)gmail(dot)com> |
---|---|
To: | Ashutosh Bapat <ashutosh(dot)bapat(dot)oss(at)gmail(dot)com> |
Cc: | Amul Sul <sulamul(at)gmail(dot)com>, PostgreSQL-development <pgsql-hackers(at)postgresql(dot)org> |
Subject: | Re: Skip temporary table schema name from explain-verbose output. |
Date: | 2021-04-27 13:38:19 |
Message-ID: | CALj2ACWitRYHJ_VVm4ktSo4ix_pTeWqjkKiA7Narf5mfx=ZeZw@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
On Tue, Apr 27, 2021 at 6:59 PM Ashutosh Bapat
<ashutosh(dot)bapat(dot)oss(at)gmail(dot)com> wrote:
>
> On Tue, Apr 27, 2021 at 12:23 PM Amul Sul <sulamul(at)gmail(dot)com> wrote:
> > >
> > > How about using an explain filter to replace the unstable text
> > > pg_temp_3 to pg_temp_N instead of changing it in the core? Following
> > > are the existing explain filters: explain_filter,
> > > explain_parallel_append, explain_analyze_without_memory,
> > > explain_resultcache, explain_parallel_sort_stats, explain_sq_limit.
> > >
> >
> > Well, yes eventually, that will be the kludge. I was wondering if that
> > table is accessible in a query via pg_temp schema then why should
> > bother about printing the pg_temp_N schema name which is an internal
> > purpose.
>
> Although only the associated session can access objects from that
> schema, I think, the entries in pg_class have different namespace oids
> and are accessible from other sessions. So knowing the actual schema
> name is useful for debugging purposes. Using auto_explain, the explain
> output goes to server log, where access to two temporary tables with
> the same name from different sessions can be identified by the actual
> schema name easily.
>
> I am not sure whether we should change explain output only for the
> sake of stable tests.
I agree to not change the explain code, just for tests.
> You could add a flag to EXPLAIN to mask pg_temp name but that's
> probably an overkill.
IMO, you are right, it will be an overkill. We might end up having
requests to add flags for other cases as well.
> Filtering is a better option for tests.
+1. EXPLAIN output filtering is not something new, we have already
stabilized a few tests.
With Regards,
Bharath Rupireddy.
EnterpriseDB: http://www.enterprisedb.com
From | Date | Subject | |
---|---|---|---|
Next Message | Tomas Vondra | 2021-04-27 13:43:07 | Re: Performance degradation of REFRESH MATERIALIZED VIEW |
Previous Message | Ashutosh Bapat | 2021-04-27 13:29:09 | Re: Skip temporary table schema name from explain-verbose output. |