On 22.09.2011 22:12, Alexander Korotkov wrote:
Patch without that dead code is attached.

Thanks.

Can you elaborate the consider-split algorithm? The criteria to select the new split over the previously selected one is this:
!               /*
!                * If ratio is acceptable, we should compare current split with
!                * previously selected one. If no split was selected then we 
select
!                * current anyway. Between splits of one dimension we search for
!                * minimal overlap (allowing negative values) and minimal ration
!                * (between same overlaps. We switch dimension if find less 
overlap
!                * (non-negative) or less range with same overlap.
!                */
!               range = diminfo->upper - diminfo->lower;
!               overlap = ((leftUpper) - (rightLower)) / range;
!               if (context->first ||
!                       (context->dim == dimNum &&
!                        (overlap < context->overlap ||
!                         (overlap == context->overlap && ratio > 
context->ratio))) ||
!                       (context->dim != dimNum &&
!                        ((range > context->range &&
!                          non_negative(overlap) <= 
non_negative(context->overlap)) ||
!                         non_negative(overlap) < 
non_negative(context->overlap)))
!                       )
!               {

Why are negative overlaps handled differently across dimensions and within the same dimension? Your considerSplit algorithm in the SYRCoSE 2011 paper doesn't seem to make that distinction.

--
  Heikki Linnakangas
  EnterpriseDB   http://www.enterprisedb.com

--
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