Обсуждение: auto_explain: Include JIT output if applicable

Поиск
Список
Период
Сортировка

auto_explain: Include JIT output if applicable

От
Lukas Fittl
Дата:
Hi,

Whilst playing around with auto_explain and JIT today, I realized that auto_explain currently doesn't output JIT information, which is rather unfortunate when analyzing a larger set of queries in a semi-automated manner.

Attached a trivial patch that fixes the issue and adds JIT information to auto_explain with the same logic as used for regular EXPLAIN.

Thanks,
Lukas

--
Lukas Fittl
Вложения

Re: auto_explain: Include JIT output if applicable

От
Andres Freund
Дата:
Hi,

On 2018-09-24 11:34:38 -0700, Lukas Fittl wrote:
> Hi,
> 
> Whilst playing around with auto_explain and JIT today, I realized that
> auto_explain currently doesn't output JIT information, which is rather
> unfortunate when analyzing a larger set of queries in a semi-automated
> manner.
> 
> Attached a trivial patch that fixes the issue and adds JIT information to
> auto_explain with the same logic as used for regular EXPLAIN.

Thanks for noticing - pushed!

It's pretty annoying that so much of this code is duplicated in
auto_explain. It'd be good if we refactored explain.c so that there's
less duplication. But that seems like it'd not be v11 work, so...

- Andres


Re: auto_explain: Include JIT output if applicable

От
Lukas Fittl
Дата:
On Mon, Sep 24, 2018 at 1:48 PM, Andres Freund <andres@anarazel.de> wrote:
Thanks for noticing - pushed!

Thanks!

Best,
Lukas

--
Lukas Fittl

RE: auto_explain: Include JIT output if applicable

От
"Shinoda, Noriyoshi (PN Japan GCS Delivery)"
Дата:

Hi,

 

I tried this feature.

I think that 'if (es->costs)' of the source code auto_explain.c will always be ‘true’.

 

Because it is not changed after 'es-> cost = true' in NewExplainState () function several rows ago.

So I attached a patch to delete this if statement.

 

Regards,

Noriyoshi Shinoda

 

From: Lukas Fittl [mailto:lukas@fittl.com]
Sent: Tuesday, September 25, 2018 6:38 AM
To: Andres Freund <andres@anarazel.de>
Cc: Pg Hackers <pgsql-hackers@postgresql.org>
Subject: Re: auto_explain: Include JIT output if applicable

 

On Mon, Sep 24, 2018 at 1:48 PM, Andres Freund <andres@anarazel.de> wrote:

Thanks for noticing - pushed!

 

Thanks!

 

Best,

Lukas

 

--

Lukas Fittl

Вложения

Re: auto_explain: Include JIT output if applicable

От
Andres Freund
Дата:
Hi,

On 2018-09-29 05:04:25 +0000, Shinoda, Noriyoshi (PN Japan GCS Delivery) wrote:
> I tried this feature.
> I think that 'if (es->costs)' of the source code auto_explain.c will always be ‘true’.
> 
> Because it is not changed after 'es-> cost = true' in NewExplainState () function several rows ago.
> So I attached a patch to delete this if statement.

I think it's better to stay closer to what explain.c itself is doing -
it's not like that if statement costs us anything really...

- Andres


RE: auto_explain: Include JIT output if applicable

От
"Shinoda, Noriyoshi (PN Japan GCS Delivery)"
Дата:
Hi, 

> I think it's better to stay closer to what explain.c itself is doing - it's not like that if statement costs us
anythingreally...
 

Oh, I understood.
Thank you.

-----Original Message-----
From: Andres Freund [mailto:andres@anarazel.de] 
Sent: Saturday, September 29, 2018 2:11 PM
To: Shinoda, Noriyoshi (PN Japan GCS Delivery) <noriyoshi.shinoda@hpe.com>
Cc: Lukas Fittl <lukas@fittl.com>; Pg Hackers <pgsql-hackers@postgresql.org>
Subject: Re: auto_explain: Include JIT output if applicable

Hi,

On 2018-09-29 05:04:25 +0000, Shinoda, Noriyoshi (PN Japan GCS Delivery) wrote:
> I tried this feature.
> I think that 'if (es->costs)' of the source code auto_explain.c will always be ‘true’.
> 
> Because it is not changed after 'es-> cost = true' in NewExplainState () function several rows ago.
> So I attached a patch to delete this if statement.

I think it's better to stay closer to what explain.c itself is doing - it's not like that if statement costs us
anythingreally...
 

- Andres