Yan and I are hammering this out a little, I've attached my current patches. I was seeing cache misses after long stress runs, which I think is coming from references on the higher levels of the tree making us skip some leaves while dropping the transaction that added them. My new version using a single cache per root, and should avoid these misses.