BTSCANNER defaults
Posted in 2006
We are upgrading from 9.3 to 10.0 and have found the BTSCANNER defaults to be a must change. Based on the recommendations in a post from Alexey Sonkin in March 2005 we've changed our production parameters and have seen a significant improvement.
Out of the box our 10.0 btree scanner was running at high priority and performing a leaf scan our large indexes way too often. This was causing high checkpoints and causing our cache hit % to drop severely since we were reading every index page into our buffers.
Most of you know this already but there may be some of us out there still running with the defaults (especially since the BTSCANNER onconfig parameter is not included in the 10.0 onconfig.std file).
Out of the box values
priority: high
threshold: 500
rangesize: -1 # leaf scan all indexes, i.e read all index pages into the buffer pool and kill your read cache
Our new values:
priority: low
threshold: 50000
rangesize: 10000 # range scan indexes with >= 10000 pages, 4% of our buffers
These values can be changed on the fly via the onmode -C commands and can be made permanent via the BTSCANNER onconfig parameter.
http://www.informix-support.co.uk/btscanner.htm has some awesome info on the btree scanner.
What is an alice scan?
Andrew