[RFC] Versioned data, revisited
Jan Hudec
bulb at ucw.cz
Thu Feb 9 21:34:40 GMT 2006
Hello All,
Thinking about the versioned data I realized that putting them in the
inventory won't make much good with respect to merging. Because the property
lines could get 'cross-matched'(1), so the annotation of inventory.weave is
about useless.
Therefore I present here a new plan:
* Each property will have it's own weave/knit.
* If the property is whole-tree, it will just contain the values
* If the property is per-entry, each line would contain the entry-id and
respective property value. Whether multiple values per entry are allowed
or not would be property specific.
* The file would be sorted, unicodetically. Merging would be done as weave
merge consdiering 0 context for conflict detection. Which should reduce to
set weave merge.
* The file would be plain newline-separated values or id:value pairs.
I won't make it XML, because I don't think it's needed. Besides
the merge algorithm is based on one-entry-one-line so it better be
inherent to the format.
* There will be two base classes, TreeProperty and EntryProperty. The former
will be treated as a set of strings and the later as a set of
InventoryEntry:value pairs. Perhaps the later will be split in two
variants, one allowing multiple values per id and the other only allowing
one value per id (will have to specify merge semantics then).
--
Jan 'Bulb' Hudec <bulb at ucw.cz>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: Digital signature
Url : https://lists.ubuntu.com/archives/bazaar/attachments/20060209/97466576/attachment.pgp
More information about the bazaar
mailing list