Re: Double sorting split patch - Mailing list pgsql-hackers

From Alexander Korotkov
Subject Re: Double sorting split patch
Date
Msg-id CAPpHfdtShbuHCooS+mPndHKubXbFVu1=XUDMibqKot+j8q3gxw@mail.gmail.com
Whole thread Raw
In response to Re: Double sorting split patch  (Heikki Linnakangas <heikki.linnakangas@enterprisedb.com>)
Responses Re: Double sorting split patch  (Alexander Korotkov <aekorotkov@gmail.com>)
List pgsql-hackers
On Wed, Oct 5, 2011 at 11:37 AM, Heikki Linnakangas <heikki.linnakangas@enterprisedb.com> wrote:
On 04.10.2011 15:10, Alexander Korotkov wrote:
On Tue, Oct 4, 2011 at 1:46 PM, Heikki Linnakangas<
heikki.linnakangas@enterprisedb.com>  wrote:

Ok. Could you phrase that as a code comment?

Here's a version of the patch I've been working on. There's no functional
changes, just a lot of moving things around, comment changes, etc. to
hopefully make it more readable.

Thanks for your work on this patch. Patch with comment is attached.

Thanks, I incorporated that, and did a lot of other comment changes. I included the example you gave earlier on how the first phase of the algorithm works, in a comment. Please review, and if you have some test cases at hand, run them. I think this is ready for commit now.
Comments looks good, thanks. I'm going to try also some datasets from rtreeportal.org
 
One more thing:
       /* Allocate vectors for results */
       nbytes = (maxoff + 2) * sizeof(OffsetNumber);
       v->spl_left = (OffsetNumber *) palloc(nbytes);
       v->spl_right = (OffsetNumber *) palloc(nbytes);

Why "maxoff + 2" ? Allocating a few extra bytes is obviously harmless, but I wonder if it was just a leftover from something.
It was nested from old code. This extra bytes are useless in modern versions of PostgreSQL as we found while seg picksplit patch discussion. Modern version of seg picksplit doesn't contain them:

------
With best regards,
Alexander Korotkov.

pgsql-hackers by date:

Previous
From: Amit Khandekar
Date:
Subject: Re: Re: [COMMITTERS] pgsql: Force strings passed to and from plperl to be in UTF8 encoding.
Next
From: Peter Eisentraut
Date:
Subject: Re: Bug with pg_ctl -w/wait and config-only directories