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