Robert Haas <robertmh...@gmail.com> writes:
> On Thu, Jan 20, 2011 at 11:55 AM, Stephen Frost <sfr...@snowman.net> wrote:
>> While I agree completely about the general "if you're going to break,
>> break it big" approach, but I don't particularly care for holding output
>> strings from EXPLAIN to the same level that we do the wireline protocol.

> I agree; we make bigger changes than this all the time.

No, we don't.  It's true that a client that wants to truly *understand*
the plan has to know a lot of things, but the fundamental format of
EXPLAIN ANALYZE output has been real stable for a real long time:

 node name  (cost=xxx.xx..xxx.xx rows=xxx width=xxx) (actual 
time=xxx.xxx..xxx.xxx rows=xxx loops=xxx)
   detail line: something or other
   ->  subnode name  ... more of the same ...

This level of understanding seems plenty sufficient for something like
explain.depesz.com, to name just one popular tool.  The last format
change of any kind we made in this skeleton was to increase the number
of decimal places in the "actual time" numbers from 2 to 3 (wow).
That was in 7.4.  Modulo that detail, this basic contract has been valid
since EXPLAIN ANALYZE was invented, in 7.2.  As proposed, this patch
will break it.

It might be interesting for somebody to go look at Hubert's code and see
just how much it really knows about the EXPLAIN output format, and how
much it's had to change across PG releases.

                        regards, tom lane

-- 
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers

Reply via email to