On 1/1/2014 6:41 AM, Marc Espie wrote:
On Tue, Dec 31, 2013 at 12:14:26PM -0800, Scott Vanderbilt wrote:
So I see that the jdk-1.6 port has been marked as broken,
unfortunately, only after upgrading to the latest snapshot (i386).
Might anyone have any idea when this will be working again?
No. It's actually been broken for a while.
jdk 1.6 has been very flaky on i386 for quite a few months.
Building packages snapshots has been very trying, as java ports started
breaking very randomly.
A few weeks ago, it took a turn for the worse. Now, java ports exit
with the same thread error in a predictable way.
"guarantee(get_thread() == thread) failed"
This is probably not true if you don't run GENERIC.MP, but then building
snapshots on SP kernels won't happen.
There's obviously something that changed in the handling of threads, and
it broke java. It's quite likely to be something related to atomic
operations.
That's about everything we know.
But rest assured that the breakage is not new, it was already there around
5.4, but in a less obvious way.
Having it be actually completely broken is probably a good thing, as it
means that some people will take notice and might fix it eventually.
Thanks very much for your response.
While I have no doubt the port may have been broken for some time, it
was working reliably in my particular use case as of the Dec. 7
snapshot. (I'm running Apache Solr 4.6.) It was only after I updated to
the Dec. 28 snapshot that the breakage manifested itself.
Following up on your suggestion about GENERIC.MP, I switched to bsd.sp
in the belief that this might get the JRE running again. However, it
failed in the same way as under the bsd.mp kernel. Do you have any other
suggestions to get the JRE limping along? Failing that, I will have to
roll back to the Dec. 7 snapshot. A working JRE on this host is
imperative for me.
FWIW, I have submitted a bug report to http://bugreport.sun.com/.
Thanks again for your assistance, and Happy New Year.