From: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
---|---|
To: | Richard Broersma Jr <rabroersma(at)yahoo(dot)com> |
Cc: | Phoenix Kiula <phoenix(dot)kiula(at)gmail(dot)com>, Postgres General <pgsql-general(at)postgresql(dot)org> |
Subject: | Re: Customizing psql console to show execution times |
Date: | 2007-08-15 15:55:00 |
Message-ID: | 6088.1187193300@sss.pgh.pa.us |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-general |
Richard Broersma Jr <rabroersma(at)yahoo(dot)com> writes:
> However, notice that "\timing" and
> explain analyze do not exactly agree on the results they produce.
\timing reports the total elapsed time as seen at the client. EXPLAIN
ANALYZE tells you about the query execution path inside the server; so
it omits the costs of parsing, planning, and network data transmission.
EXPLAIN ANALYZE also has much higher measurement overhead (typically 2
gettimeofday() calls per row, rather than 2 per query as for \timing).
So it's not unheard of for E.A. to report a number *larger* than the
actual execution time, especially on cheap PC hardware which tends to
have dog-slow gettimeofday().
They're both useful, but you have to keep in mind what you're measuring
and for what purpose.
regards, tom lane
From | Date | Subject | |
---|---|---|---|
Next Message | Vivek Khera | 2007-08-15 15:55:37 | Re: Best practice for: ERROR: invalid byte sequence for encoding "UTF8" |
Previous Message | Phoenix Kiula | 2007-08-15 15:53:37 | Re: Customizing psql console to show execution times |