decentralization

Joel Peshkin bugreport at peshkin.net
Fri May 9 23:12:05 UTC 2003


C.J. Collier wrote:

>bugzilla would do well to decentralize.  Each bugzilla server should
>communicate with others.  Bug reports should be shared between projects.
>
>For example, on bugs.debian.org bug #189211 depends on the resolution of
>bug #97177 on bugzilla.gnome.org.  There is no way to have one depend on
>the other, so it is not easy to tell when the bug is resolved.  Taking a
>look at #189211 (bugs.debian.org) will show you a bit about the unhappy
>mess this causes.
>
><snip>
>
This is actually a bit more complicated if we want it to work between 
public and non-public Bugzillas.  I could really use this-  but, for me 
to take advantage of this, I would have to be able to have a bug in my 
(non-public) Bugzilla depend on BMO's bug number xxxxx.   I often want 
to do this because I get site customization requests that rely on a 
Bugzilla enhancment.  Currently, I have no way to express this.  
Ideally, I could say....

Depends on (http:bugzilla.mozilla.org:80/bugzilla/)12345
Perhaps this could be generalized as a depends on [URL] where the URL 
would point directy at something like 
http://bugzilla.mozilla.org/show_bug.cgi?id=12345 ??

This "half of a dependency," by itself, would take care of about 80% of 
the need for this feature.

Doing the other "half" and having the blocking bug on a public system be 
aware that it is blocking a bug on a non-public system as well as 
handling notifications on changes opens a whole can of worms.

If I ignore the open/closed system question and just look for a 
mechanism, the interaction could look like this.
[[Joel dons fireproof suit...]]

User on bugzilla.gnome.org makes BGO bug 12345 depende on BMO bug 54321  
(by pasting a URL into BGO??)
BGO makes BGO#12345 depend on BMO#54321
BGO contacts BMO's external_dependency.cgi and passes it the BGO URL and 
bug number and the BMO bug number (and some credentials??)
BMO contacts BGO's external_dependency.cgi and queries to ensure that 
the BGO URL is legit and BGO shows the dependency
BMO and BGO now show dependencies on each other

On status change...
BMO has a status change on 54321, contacts BGO's 
external_dependency.cgi, and posts status change information
BGO handles its resulting notifications.

Questions:  
1) Should these inter-system contacts be done by HTTP or by SMTP?? (note 
that using SMTP would make this require more than a URL)
2) Should a "trust" be needed between the 2 systems to enable this?  
(i.e.  no trust means - My users are allowed to place dependencies on 
BMO bugs and my system will track them, but BMO does not permit my 
system to make it think its bugs block mine)






More information about the developers mailing list