[dist-bugs] About distributed bug tracking
Jesse Vincent
jesse at bestpractical.com
Thu Jul 10 09:50:37 EDT 2008
On Jul 9, 2008, at 5:21 PM, Joey Hess wrote:
> Pierre Habouzit wrote:
>> One thing that could probably help would be to agree with several
>> important BTS authors on a bug UUID format.
>
> I can only think of three ways to have a globally unique id that
> different BTSs could agree on:
>
> * an URL (or something very much like an url, ie "Ubuntu bug #xxxxx")
As it happens, the UUID spec has a canonical way (well, it has two
canonical ways) to turn a URL into a UUID.
Version 3 UUIDs use an MD5 hash if the URL and Version 5 UUIDs (which
obsolete version 3 UUIDs) use a SHA1 hash of the URL.
> * a literal, random UUID
What I think is important is that every DBTS agrees upon how to form
the UUID for a bug that comes out of a given legacy BTS[1]. Using a
URL->UUID encoding based on a canonical URL for the bug in the
originating system seems like a win. Once the bugs are in a DBTS,
they'll have the UUID attached as a first-class property and it won't
change.
As the bug is synced into other legacy BTSes, the DBTS cloud will need
to record other non-canonical ids for that bug....but that's basically
going to look a lot like how you'd end up tracking bug status on
different branches in different VCSes.
>
> * some form of checksum of a previous message sent to the bug
> (either the first message, or a git-style checksum chain that
> can be traversed to find the first one)
This worries me a little bit because it depends on multiple different
systems storing and forwarding structured data without
modification....That's a fine assumption when you're shipping source
code around, but not quite so hot when you have a database-like system
and different peers may be tracking different data or storing things
differently.
Best,
Jesse
[1] Legacy, in this case being defined as "doesn't assign UUIDs to bugs"
More information about the dist-bugs
mailing list