Re: Invalid explain output for multi-plan statements

From: Robert Haas <robertmhaas(at)gmail(dot)com>
To: Greg Sabino Mullane <greg(at)turnstep(dot)com>
Cc: pgsql-bugs(at)postgresql(dot)org
Subject: Re: Invalid explain output for multi-plan statements
Date: 2009-12-14 17:59:35
Message-ID: 603c8f070912140959l1832d025me6abab21561e4186@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-bugs

On Mon, Dec 14, 2009 at 12:32 PM, Greg Sabino Mullane <greg(at)turnstep(dot)com> wrote:
>
> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: RIPEMD160
>
>
> The new explain formats break if you have a multi-query statement.
> I don't have time to fix at the moment, but I'll try and explain
> the problem. For YAML, the forced leading space in all output
> means that the first "- Plan:" has two spaces, and all other ones
> have a single space. This leads to an inconsistent indentation
> error when parsing. For JSON, I'm not sure where the exact problem
> lies, but it also will not parse as it produces something like this:
>
> [
>  {
>   ...plan 1
>  },,
>  {
>   ...plan2
>  }
> ]
>
> The XML output looks valid, but I've not tried to parse it.
>
> To duplicate:
>
> CREATE TABLE abc(a int);
> INSERT INTO abc VALUES (1);
> CREATE TABLE def(a int);
> CREATE RULE foo AS ON UPDATE TO abc DO ALSO SELECT 1 FROM def;
>
> EXPLAIN (format YAML) UPDATE abc SET a=a;
> EXPLAIN (format JSON) UPDATE abc SET a=a;
> EXPLAIN (format XML) UPDATE abc SET a=a;

I will fix this, unless someone else beats me to it.

...Robert

In response to

Responses

Browse pgsql-bugs by date

  From Date Subject
Next Message Greg Johnson 2009-12-14 18:20:07 BUG #5243: Segmentation fault when sending null to crypt();
Previous Message Greg Sabino Mullane 2009-12-14 17:32:01 Invalid explain output for multi-plan statements