is a special cost for external sort?

Started by Pavel Stehuleover 12 years ago3 messages
#1Pavel Stehule
pavel.stehule@gmail.com

Hello

I found a slow query with large external sort. I expect, so external
sort should be penalized. Is it?

Regards

Pavel

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

#2Tom Lane
tgl@sss.pgh.pa.us
In reply to: Pavel Stehule (#1)
Re: is a special cost for external sort?

Pavel Stehule <pavel.stehule@gmail.com> writes:

I found a slow query with large external sort. I expect, so external
sort should be penalized. Is it?

See cost_sort() in src/backend/optimizer/path/costsize.c

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

#3Jeff Janes
jeff.janes@gmail.com
In reply to: Pavel Stehule (#1)
Re: is a special cost for external sort?

On Thu, Jul 18, 2013 at 9:14 AM, Pavel Stehule <pavel.stehule@gmail.com> wrote:

Hello

I found a slow query with large external sort. I expect, so external
sort should be penalized. Is it?

It tries to, but it doesn't seem to be much good at it. In
particular, I think it does a poor job of estimating the CPU cost of
an external sort relative to an in-memory sort of a slightly smaller
data set. In my experience adding the single tuple that actually
pushes you over the work_mem limit costs about 3x in CPU.

It is one of those things I started looking into a few times, but
never got anywhere before getting distracted.

Cheers,

Jeff

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