We currently have two implementations of using a b-tree index to get data in pyfive (I think), which is not a problem in I/O terms, as the second copy is from memory, but it seems redundant and for files with zillions of chunks will be expensive in memory.
We should chase this down at some point.
We have the formal cached copy which is in DatasetID, and we have the copy which is the BTree instance itself.