Re: Abbreviated keys for Numeric

From: Andrew Gierth <andrew(at)tao11(dot)riddles(dot)org(dot)uk>
To: Tomas Vondra <tomas(dot)vondra(at)2ndquadrant(dot)com>
Cc: Peter Geoghegan <pg(at)heroku(dot)com>, Pg Hackers <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: Abbreviated keys for Numeric
Date: 2015-02-21 01:00:42
Message-ID: 87twygdqu9.fsf@news-spur.riddles.org.uk
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

>>>>> "Tomas" == Tomas Vondra <tomas(dot)vondra(at)2ndquadrant(dot)com> writes:

>> Right...so don't test a datum sort case, since that isn't supported
>> at all in the master branch. Your test case is invalid for that
>> reason.

Tomas> What do you mean by 'Datum sort case'?

A case where the code path goes via tuplesort_begin_datum rather than
tuplesort_begin_heap.

Tomas> The test I was using is this:

Tomas> select percentile_disc(0) within group (order by randnum) from stuff;

Sorting single columns in aggregate calls uses the Datum sort path (in
fact I think it's currently the only place that does).

Do that test with _both_ the Datum and Numeric sort patches in place,
and you will see the effect. With only the Numeric patch, the numeric
abbrev code is not called.

If you want a test that works without the Datum patch, try:

select count(*) from (select randnum from stuff order by randnum) s;

--
Andrew (irc:RhodiumToad)

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Tomas Vondra 2015-02-21 01:06:34 Re: Abbreviated keys for Numeric
Previous Message Tomas Vondra 2015-02-21 00:52:08 Re: Abbreviated keys for Numeric (was: Re: B-Tree support function number 3 (strxfrm() optimization))