[MERGE] Add simple Storage object

Robert Collins robertc at robertcollins.net
Mon Feb 11 06:52:30 GMT 2008


On Mon, 2008-02-11 at 00:08 -0500, Aaron Bentley wrote:


> > Graph queries for Pack repositories can be done via private methods on
> > the unified store, likewise for Knits etc. I suggest this because graph
> > relationships between keys is not appropriate for a bytestore
> 
> Why is not appropriate?  It seems to have worked out quite well for
> VersionedFile.

Actually its caused a bunch of headaches - starting with weaves and
slowly being detangled. We had incorrect graph answers in weave
repositories due to this. Not all bytes we store have graphs. Some have
many graphs. For a simple consistent interface I think we should have no
graphs exposes on this interface.

> I think it would be nice if repos only talked to the UnifiedByteStore
> via its public interface.  Since UnifiedByteStore will only be used by
> repositories, what's the point of a private interface?

We have different idioms within existing code; we can get very good
results without having to fix all the code out there by not biting off
everything at once.

> I'd be happy with a UnifiedIndex if that seems like a more reasonable
> place to put graph queries.

We have repository.get_graph already, I think that that interface is
sufficient for now.

-Rob
-- 
GPG key available at: <http://www.robertcollins.net/keys.txt>.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: This is a digitally signed message part
Url : https://lists.ubuntu.com/archives/bazaar/attachments/20080211/a7813ad2/attachment.pgp 


More information about the bazaar mailing list