Re: auto_explain causes regression failures

From: Takahiro Itagaki <itagaki(dot)takahiro(at)oss(dot)ntt(dot)co(dot)jp>
To: Andrew Dunstan <andrew(at)dunslane(dot)net>
Cc: PostgreSQL-development <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: auto_explain causes regression failures
Date: 2010-02-17 05:23:36
Message-ID: 20100217142335.9E63.52131E4D@oss.ntt.co.jp
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers


Andrew Dunstan <andrew(at)dunslane(dot)net> wrote:

> With the following settings
>
> custom_variable_classes = 'auto_explain'
> auto_explain.log_min_duration = 0
> auto_explain.log_format = 'xml'
> auto_explain.log_analyze = on
> auto_explain.log_verbose = on
> shared_preload_libraries = 'auto_explain'
>
> I am getting regression failures on the rowtypes, transactions and
> arrays tests. Diff file is attached. I'm going to look into it, but if
> anyone has a good idea what's going on please speak up ASAP.

Thank you for the bug report. Auto_explan tries to explain the query
even if it is failed, but schema objects that are created in the same
transaction might not be available. "cache lookup failed" erros can be
avoided if auto_explain skips explaining queries in aborted transactions.

The attached patch will fix the bug, but I'm not sure whether this usage
of TransactionBlockStatusCode() is sane. Comments or better ideas?

Regards,
---
Takahiro Itagaki
NTT Open Source Software Center

Attachment Content-Type Size
auto_explain.fix.diff application/octet-stream 815 bytes

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Tom Lane 2010-02-17 05:24:41 Re: Listen / Notify - what to do when the queue is full
Previous Message Fujii Masao 2010-02-17 05:13:51 Re: bug? autovacuum is not launched even if autovacuum_freeze_max_age is reached