From: | Greg Stark <gsstark(at)mit(dot)edu> |
---|---|
To: | Andres Freund <andres(at)anarazel(dot)de> |
Cc: | Robert Haas <robertmhaas(at)gmail(dot)com>, pgsql-hackers(at)postgresql(dot)org |
Subject: | Re: machine-readable explain output |
Date: | 2009-06-16 12:14:11 |
Message-ID: | 407d949e0906160514j65f45187o964e4c803c5934e@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
On Tue, Jun 16, 2009 at 12:19 PM, Andres Freund<andres(at)anarazel(dot)de> wrote:
> <Startup-Cost>1710.98</Startup-Cost>
> <Total-Cost>1710.98</Total-Cost>
> <Plan-Rows>72398</Plan-Rows>
> <Plan-Width>4</Plan-Width>
> <Actual-Startup-Time>136.595</Actual-Startup-Time>
> <Actual-Total-Time>136.595</Actual-Total-Time>
> <Actual-Rows>72398</Actual-Rows>
> <Actual-Loops>1</Actual-Loops>
XML's not really my thing currently but it sure seems strange to me to
have *everything* be a separate tag like this. Doesn't XML do
attributes too? I would have thought to use child tags like this only
for things that have some further structure.
I would have expected something like:
<join
<scan type=sequential source="foo.bar">
<estimates cost-startup=nnn cost-total=nnn rows=nnn width=nnn></>
<actual time-startup=nnn time-total=nnnn rows=nnn loops=nnn></>
</scan>
<scan type=function source="foo.bar($1)">
<parameters>
<parameter name="$1" expression="...."></>
</parameters>
</scan>
</join>
This would allow something like a graphical explain plan to still make
sense of a plan even if it finds a node it doesn't recognize. It would
still know generally what to do with a "scan" node or a "join" node
even if it is a new type of scan or join.
From | Date | Subject | |
---|---|---|---|
Next Message | Greg Stark | 2009-06-16 12:38:17 | Re: [PATCH] backend: compare word-at-a-time in bcTruelen |
Previous Message | Robert Haas | 2009-06-16 12:03:24 | Re: [PATCH] backend: compare word-at-a-time in bcTruelen |