monotone-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Monotone-devel] responses to some IRC discussion of 'automate'


From: Timothy Brownawell
Subject: Re: [Monotone-devel] responses to some IRC discussion of 'automate'
Date: Mon, 07 Aug 2006 07:52:25 -0500

On Mon, 2006-08-07 at 10:21 +0200, Thomas Keller wrote:
> Nathaniel Smith wrote:
> >> SELECT ra1.child
> >> FROM revision_ancestry ra1
> >> LEFT JOIN revision_ancestry ra2 ON ra1.child=ra2.parent
> >> INNER JOIN revision_certs rc ON ra1.child=rc.id AND rc.name="branch" 
> >> AND rc.value LIKE "net.venge.monotone"
> >> WHERE ra2.parent IS NULL
> >> GROUP BY ra1.child
> > 
> > Okay, I've spent a few minutes staring at this, and I give up :-).
> > Can you break down what it does in English?
> 
> Okay, here we go:
> 
> a) we left join the revision_anchestry table with itself to find any 
> child revision which is not parent revision of another record (thus 
> ra2.parent IS NULL); simple speak we find all leaves
> b) then we inner join with the certs table to ensure that we only get 
> those leaves which have a particular branch cert attached, thus are 
> heads of that branch

It does not work for branches where the branch heads aren't leaves in
the revision graph. For example, it fails on net.venge.monotone.visualc8
or net.venge.monotone.tbrownaw.tester-spinoff .

It also doesn't allow for checking to see if we actually trust the
branch certs we're using.

Tim
-- 
Free public monotone hosting: http://mtn-host.prjek.net





reply via email to

[Prev in Thread] Current Thread [Next in Thread]