couchdb-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Bob Dionne <>
Subject Re: Fundamentals Question on CoucheDB's append only b+tree.
Date Tue, 13 Mar 2012 17:40:09 GMT

On Mar 13, 2012, at 1:26 PM, Davies, Owain wrote:

> Hi,
> I have been reading the couchDB guide, particularly the appendix on the
> power of b-trees. As I understand it couchdb uses a b+tree, in which the
> leaf nodes have pointers to their siblings to facilitate quick in-order
> and reverse in-order enumeration of the documents in the b+tree.
> When a document is modified (or added), then the document is appended to
> the file, the leaf node is cloned and updated to point to the new
> document. However in order to maintain the linked list between the
> sibling leaf nodes, you would need to update the adjacent link nodes
> (creating new leaf nodes appended onto the end of the file), this will
> eventually require that the whole tree is replicated, not just the node
> on the path to the effected leaf node.
> I do not think this can be the case, could somebody point out where I
> have made the mistake? 

yes, the leaf nodes in couchdb are not linked

> Thanks,
> Owain
> Please consider the environment before printing this email.
> This message should be regarded as confidential. If you have received this email in error
please notify the sender and destroy it immediately.
> Statements of intent shall only become binding when confirmed in hard copy by an authorised
> The contents of this email may relate to dealings with other companies under the control
of BAE Systems plc details of which can be found at
> Detica Limited is a BAE Systems company trading as BAE Systems Detica.
> Detica Limited is registered in England and Wales under No: 1337451.
> Registered office: Surrey Research Park, Guildford, Surrey, GU2 7YP, England.

View raw message