oh looking at the the design i posted above again, the lock has nothing to do with batch table size control, rather that was for the wedged block scenario i saw in the first place. it was happening again, subsequent batches were not clearing it out. as i understand it, your argument is residuals would have eventually cleared it out, but then i started noticing io pressure (mmap), and thought id try this run and see if that fixed the problem