Proposal to revise forest graph and integration practices for JDK 9

Joe Darcy joe.darcy at
Sun Dec 1 21:14:58 PST 2013

On 11/27/2013 12:52 AM, David Holmes wrote:
> On 27/11/2013 3:13 AM, Joe Darcy wrote:
>> On 11/25/2013 7:19 AM, Chris Hegarty wrote:
>>> I am really happy to see this issue being discussed. I'm in favor of
>>> fewer, simpler structured, forests, and this proposal seems to give 
>>> that.
>>> There is one potential issue I see. Having done several bulk
>>> integrations into jdk8/tl over the past year, I found it nearly
>>> impossible to get a stable/quite jdk8/tl. Ignoring the stability issue
>>> for now ( being discussed in another thread ), if hotspot is to
>>> integrate into -dev it will be nearly impossible to for the integrator
>>> to actually build and test, the latest source, before pushing. As the
>>> underlying repos in -dev are bound to be moving at a fast pace.
>>> It is worth noting that currently this is not an issue as master is
>>> quite, apart from the scheduled/well known integration slots.
>>> Apart from the bulk integrations I did into jdk8/tl, I'm not sure that
>>> anyone else downstream is doing anything similar. If so, then their
>>> experiences here would be useful.
>>> This said, I'm still in favor of the current proposal, just maybe
>>> needs more specifics around integrations.
>> Just a quick comment for now, for this reasons and others, I think it
>> would be helpful if we moved the JDK to a more continuous integration
>> model. The sort of challenges we have in JDK integration are exactly the
>> sort of situations CI can help.
> I often hear CI being touted as some kind of silver bullet but I am 
> yet to see how it actually helps. I would be interested to get some 
> details both on what "CI" means exactly and what problems it resolves 
> (and what problems it introduces).

We've found the "Continuous Delivery" book by Jez Humble and David 
Farley to be useful.

Some relevant quotes from the first chapter or two of that text:

> If It Hurts, Do It More Frequently, and Bring the Pain Forward
> "This is the most general principle on our list, and could perhaps 
> best be described as a heuristic. But it is perhaps the most useful 
> heuristic we know of in the context of delivering software, and it 
> informs everything we say."
> Integration is often a very painful process.
> "If this is true of your project, integrate every time somebody checks 
> in, and do it from the start of the project.
> If testing is a painful process that occurs just before release, don’t 
> do it at the end. Instead, do it continually from the beginning of the 
> project."



More information about the jdk9-dev mailing list