On Tue, Feb 11, 2014 at 10:07 PM, Emmanuel Lécharny <[email protected]>wrote:
> Hi guys, > > in order to implement the transactions for persisted B-tree, I have to > modify the way we serialize them on disk. > > ATM, we use a heavy B-tree header which contains all the B-tree > information. This was ok as soon as we don't support transaction, and > specifically versions. As soon as we want to support more than one > version for a given B-tree, we have to create a new B-tree header for > each single revision. It's now clear that we don't want to duplicate > data like the B-tree name, the serializers, the pageSize and the > duplicate flag, as they will never change. The only values we want to > store in each B-tree header are the revision, the number of elements, > and the rootPage offset. > > That will have some impact on the storage. The BtreeOfBtrees will now > contain reference to B-tree headers, and we will store the B-tree static > information into page which will never be updated. Every added element > will create a new B-tree header pointing to the new rootPage. > > This is not that a big change, but it's mandatory. > > go for it, probably we both are the only guys who need to delete and recreate a mavibot partition :) > -- > Regards, > Cordialement, > Emmanuel Lécharny > www.iktek.com > > -- Kiran Ayyagari http://keydap.com
