On 02/01/2011 04:43 AM, Branko Čibej wrote: > You do know that "diff" and "delta" are two different beasts, and that > the diff optimizations have no effect on deltas? :) > > The problem with directory deltification lies in the length of the delta > chain and the frequency of directory lookup compared to file access. The > sad fact is that our directory storage (/and/ our API) are woefully > unsuited to their tasks. The way they're stored now (in both BDB and > FSFS back-ends) requires the whole directory to be read into memory and > hashed in order to find a single entry, and you have to do this for each > level of directories when resolving a path. It doesn't help that most of > the APIs are strictly path based, e.g., editor drives will do the lookup > any number of times. > > The whole concept of directory storage needs to be changed. The easiest > way would be to store directories as B-trees, however, that doesn't play > nice with versioning. On the other hand, directory structure is well > known and there's no reason to use a generic delta algorithm to store > them. I could probably come up with a better storage schema for > directories in a couple weeks, but I don't have the time to implement > such a thing. > > -- Brane
I can only really speak for the BDB side of things, but... "what he said". -- C. Michael Pilato <cmpil...@collab.net> CollabNet <> www.collab.net <> Distributed Development On Demand
signature.asc
Description: OpenPGP digital signature