What am I doing wrong here?

Brad Wetmore Bradford.Wetmore at Sun.COM
Wed Mar 19 18:29:36 UTC 2008


 > But Brad's comment seemed to imply that everything that wasn't a
 > "developer" workspace was in jdk7, and I was trying to confirm that
 > this wasn't the case.

Ted, I'm sorry my posting wasn't as helpful as I hoped.

David wrote:

 > Or maybe that the listing on http://hg.openjdk.java.net/ doesn't
 > provide enough information such as parent-child relations between the
 > forests.

I made that suggestion a while back, but it's one of those lower 
priority RFEs.

I'll make sure that these comments gets to the guide writing team: 
guide-discuss at openjdk.java.net

So from the "A picture's worth a thousand words" department:

     http://blogs.sun.com/wetmore/resource/images/gates.gif

which came from my "What's a gatekeeper blog" post:

     http://blogs.sun.com/wetmore/entry/you_re_a_gatekeeper_uh

Hopefully this is a little clearer:

     MASTER = http://hg.openjdk.java.net/jdk7/jdk7
         includes subrepositories below that:  jdk/hotspot/langtools/etc.
         aka Golden Source, used by Release Engineering to build products

     GATES  = http://hg.openjdk.java.net/jdk7/<XXX> (plus subreps below)
         where XXX = 2d, awt, build, corba, hotspot*, i18n, jax*, jsn,
                   l10n, swing, tl, etc.

Individual developer changes go into one of the GATES, which eventually 
trickles up to the MASTER, according to the integration schedule Tim 
mentioned.  Changes in the GATES are tested by the gatekeepers before 
they go into the MASTER.

If developers aren't careful, they could check in changes to the GATES 
that just don't work, thus my caveat about stableness between the MASTER 
and GATE.  I think most gatekeepers build/test nightly, so the longest a 
GATE might be unknowingly broken is 1 business day.

I'd suggest reading my blog post if you haven't already seen it, it goes 
into a lot of detail as to how changes go from developers to the GATES 
to the MASTER.

 > meaning, none of "Oh my God, dude, your foobar code broke the whole
 > thing!" to be heard

You mean, something so heinous that it earns my Power Cord Noose?

     http://blogs.sun.com/wetmore/resource/images/PowerNoose.JPG

Your (mostly) friendly neighborhood JSN gatekeeper,

Brad

(Bonus points to SCA Sun employees if you can tell me who's office last 
had the noose...no one has correctly identified it so far.)


David Herron wrote:
> Tim Bell wrote:
>> Hi Ted:
>>
>> You wrote:
>>
>>> My understanding is that the developers each have their own private 
>>> workspaces, clones of the projects you list above, and are making 
>>> changes to their workspaces and will promote them to the master 
>>> workspace when they're confident it's reasonably safe (meaning, none 
>>> of "Oh my God, dude, your foobar code broke the whole thing!" to be 
>>> heard) to do so. I'm still a little wet behind the ears when it comes 
>>> to distributed SCS's.
>>
>> That is close.  In between the developer source trees and the master 
>> are the group repositories.  [1]
>>
>> Changes flow from the developer to the group repository, where they 
>> bake for a week or two before going up to the master.  Since the 
>> master gates opened earlier this month, groups have been getting ready 
>> to push to it according to the integration schedule [3].  It takes the 
>> developer and test teams several days to get the flow started again.
>>
>> Brad [2] and I have a batch of changes (fixes for 80 bug-IDs) in 
>> flight this week that will arrive in jdk7/jdk7 Friday afternoon 
>> (Pacific time) [3], _if_ all goes well with Pre-Integration Testing 
>> (PIT).  If issues are uncovered we will need to fix them, regroup, and 
>> possibly ask for a later integration slot.
>>
>> To summarize my experience as a gatekeeper: there will be a problem 
>> every cycle, and it will be something we have never seen before.  
>> Sometimes we can fix it on the spot, sometimes we file a new bug 
>> report and move on.  Sometimes we have to back off and start the PIT 
>> cycle over.
>>
>> Tim
>> [1] http://blogs.sun.com/kto/entry/openjdk_mercurial_wheel
>> [2] http://blogs.sun.com/wetmore/entry/you_re_a_gatekeeper_uh
>> [3] http://openjdk.java.net/projects/jdk7/builds
> 
> I think there is a problem here of trying to describe with words a thing 
> that's better described with a picture.
> 
> Or maybe that the listing on http://hg.openjdk.java.net/ doesn't provide 
> enough information such as parent-child relations between the forests.
> 
> The relationship is:  MASTER <-> group integration workspace <-> 
> individual developer workspace
> 
> Developer makes some changes in their workspace.. does a commit to ... 
> the developers commit is to the group integration workspace, where it 
> undergoes build, gatekeeping, testing, all before it's commit'd to the 
> MASTER workspace.
> 
> Oh, I see Kelly's blog has the right picture.  I think that picture 
> belongs in the developers guide 
> (http://openjdk.java.net/guide/repositories.html)
> 
> - David Herron
> 
> 



More information about the build-dev mailing list