wiredtiger/wiredtiger — pull request #930 by keithbostic (2014-03-26 22:33:37+00:00)
Title: Individually allocate WT_REF structures and move them when deepening the tree.

A problem in the new-split branch is WT_REF structures remain with the internal parent page, even when the tree deepens, and the memory footprint of that page continues to increase even as the tree deepens. The current algorithms go south: they view a large internal page as a reason to deepen the tree, and no good comes the internal page never decreasing in size.

A different approach: allocate WT_REF structures individually (even when reading pages from disk), and move the memory footprint for the WT_REF structures to the new children pages when the tree is deepened.