refactor on-disk B-tree