Definition at line 1683 of file gserialized_gist_2d.c.

References ConsiderSplitContext::boundingBox, ConsiderSplitContext::dim, ConsiderSplitContext::entriesCount, ConsiderSplitContext::first, ConsiderSplitContext::leftUpper, LIMIT_RATIO, non_negative(), ConsiderSplitContext::overlap, ConsiderSplitContext::range, ConsiderSplitContext::ratio, and ConsiderSplitContext::rightLower.

Referenced by gserialized_gist_picksplit_2d().

1693 POSTGIS_DEBUGF(5,

"consider split: dimNum = %d, rightLower = %f, " 1694 "minLeftCount = %d, leftUpper = %f, maxLeftCount = %d ",

1695 dimNum, rightLower, minLeftCount, leftUpper, maxLeftCount);

1703 leftCount = minLeftCount;

1707 if (maxLeftCount <= context->entriesCount / 2)

1708 leftCount = maxLeftCount;

1718 ratio = ((float4) Min(leftCount, rightCount)) /

1723 bool selectthis =

false;

1737 overlap = (leftUpper - rightLower) / range;

1742 else if (context->

dim == dimNum)

1748 if (overlap < context->overlap ||

1749 (overlap == context->

overlap && ratio > context->

ratio))

1772 (range > context->

range &&

1780 context->

first =

false;

1781 context->

ratio = ratio;

1782 context->

range = range;

1786 context->

dim = dimNum;

1787 POSTGIS_DEBUG(5,

"split selected");

static float non_negative(float val)