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