Re: compute_query_id and pg_stat_statements

From: Julien Rouhaud <rjuju123(at)gmail(dot)com>
To: Pavel Stehule <pavel(dot)stehule(at)gmail(dot)com>
Cc: Kyotaro Horiguchi <horikyota(dot)ntt(at)gmail(dot)com>, Magnus Hagander <magnus(at)hagander(dot)net>, Fujii Masao <masao(dot)fujii(at)oss(dot)nttdata(dot)com>, Michael Paquier <michael(at)paquier(dot)xyz>, Andres Freund <andres(at)anarazel(dot)de>, Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>, Alvaro Herrera <alvherre(at)alvh(dot)no-ip(dot)org>, Stephen Frost <sfrost(at)snowman(dot)net>, Bruce Momjian <bruce(at)momjian(dot)us>, Christoph Berg <myon(at)debian(dot)org>, Peter Eisentraut <peter(dot)eisentraut(at)enterprisedb(dot)com>, PostgreSQL Hackers <pgsql-hackers(at)lists(dot)postgresql(dot)org>
Subject: Re: compute_query_id and pg_stat_statements
Date: 2021-05-12 09:51:49
Message-ID: 20210512095149.kqbnhe72uijfwi2r@nol
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On Wed, May 12, 2021 at 11:42:12AM +0200, Pavel Stehule wrote:
> st 12. 5. 2021 v 11:39 odesílatel Kyotaro Horiguchi <horikyota(dot)ntt(at)gmail(dot)com>
> napsal:
>
> > At Wed, 12 May 2021 17:30:26 +0800, Julien Rouhaud <rjuju123(at)gmail(dot)com>
> > wrote in
> > > On Wed, May 12, 2021 at 10:57:25AM +0200, Pavel Stehule wrote:
> > > >
> > > > My second proposal can work for your example too. pg_stat_statements
> > have
> > > > to require any active queryid computing. And when it is not available,
> > then
> > > > the exception should be raised.
> > > >
> > > > The custom queryid can return null, and still the queryid will be
> > computed.
> > > > Maybe the warning can be enough. Just, if somebody use
> > pg_stat_statements
> > > > function, then enforce the check if queryid is computed
> > (compute_query_id
> > > > is true || some hook is not null), and if not then raise a warning.
> > >
> > > Ah I'm sorry I misunderstood your proposal. Yes, definitely adding a
> > warning
> > > or an error when executing pg_stat_statements() SRF would help, that's a
> > great
> > > idea!
> > >
> > > I'll wait a bit in case someone has any objection, and if not send an
> > updated
> > > patch!
> >
> > Isn't there a case where pg_stat_statements uses an alternative
> > query-id provider?
> >
>
> this check just can check if there is "any" query-id provider. In this
> context is not important if it is buildin or external

Yes, the idea is that if you execute "SELECT * FROM pg_stat_statements" or
similar, then if the executing query itself doesn't have a queryid then
it's very likely that you didn't configure compute_query_id or an alternative
query_id implementation properly. And loudly complaining seems like the right
thing to do.

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Julien Rouhaud 2021-05-12 10:09:30 Re: compute_query_id and pg_stat_statements
Previous Message Etsuro Fujita 2021-05-12 09:44:56 Re: Inherited UPDATE/DELETE vs async execution