Additional tweaks...

* There's a difference in File.flock behavior between Java 5 and later
versions. Specifically, on later versions you have to have the file
open in specific modes (read/write) to be able to do shared and
exclusive locks. There's a guard in RubySpec for this behavior, which
is exhibited on OpenJDK 6 and later and *should* be exhibited on any
version of MRI on Solaris (which is the lowest-common-denominator
excuse for the Java behavior). Because it only fails on Java 5 and the
majority of users are on Java 6, I've added a Java 5-specific
exclusion to spec/jruby.1.8.mspec and spec/jruby.1.9.mspec. That
appears to be getting the spec runs green on Java 5...finally!

* The spec runs were configured in Jenkins to have a maximum permgen
of 128M, which caused my tweak from earlier to not take effect. I
modified the Jenkins environment for spec-ci to allow permgen up to
512M.

If I have time this evening (sick baby up late) I will attempt to get
the cross-JVM build matrix green as well. We'll be greener than we've
been in a long time, once that happens.

- Charlie

On Mon, Dec 5, 2011 at 11:30 PM, Charles Oliver Nutter
<head...@headius.com> wrote:
> Man, is this ever a painful job.
>
> I've spent most of the day trying to get CI builds green again, and
> the server has been working against me.
>
> Most of the major builds were red...the spec builds, test-all, dist,
> and I think jruby-base as well. In the process of fixing one build I
> uncovered regressions in others, or uncovered bugs that caused more
> builds to go red. Needless to say, I didn't expect to spend 15 hours
> on this.
>
> I think I'm finally closing in on having everything green again, and
> there were a few facts that came out of this I wanted to bring to
> everyone's attention.
>
> * As I posted earlier, I added another test-all build for jruby-1_6.
> It should help keep us honest.
>
> * Ant 1.7.0 is a pain in the ass. It appeared to ignore the JDK we
> started it up with and always launched 'java' with whatever the
> command on PATH was. BUT, it would run that JVM with the runtime you
> started it up with...or something like that. In any case, those nasty
> bizarre VerifyErrors came back. Ultimately I ended up going through
> and explicitly making pretty much all builds use the ant182 install of
> ant, *and* I modified Jenkins to puts that ant install at the front of
> PATH. If I didn't do that, it seemed to keep picking up the
> system-wide emerged "ant" and reverting to the old issues.
>
> * I had to bump up permgen on a couple of the precompiled tests again.
> They're at 512M now. I also added permgen size to the spec runs, which
> might cause them to break on JVMs that don't have a permgen flag. I'll
> cross that bridge shortly.
>
> * I also forced almost all builds to run with Java 5. We've had some
> bad Java 6 code sneak through again recently, and we need to keep the
> builds honest across the board. All builds, unless otherwise
> specified, will run with Java 5.
>
> I'm still in progress, but I'll write again in a while as more builds go 
> green.
>
> - Charlie

---------------------------------------------------------------------
To unsubscribe from this list, please visit:

    http://xircles.codehaus.org/manage_email


Reply via email to