[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