--
You received this message because you are subscribed to the Google Groups "mechanical-sympathy" group.
To unsubscribe from this group and stop receiving emails from it, send an email to mechanical-sympathy+unsub...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
--
You received this message because you are subscribed to the Google Groups "mechanical-sympathy" group.
To unsubscribe from this group and stop receiving emails from it, send an email to mechanical-symp...@googlegroups.com.
If this is not off topic, what is the topic of this group?
Is it a Java support group, or a "coding in a way that exploits
the way the hardware works" group?
Not at all off topic… first, thread dumps lie like a rug… and here is why…for each thread {safe pointcreate stack trace for that threadrelease threads from safe point}And while rugs may attempt to cover the debris that you’ve swept under them, that debris leaves a clearly visible lump that suggests that you have a congestion problem on locks in both sun.security.provider.Sun and java.lang.Class…. What could possibly go wrong?
To unsubscribe from this group and stop receiving emails from it, send an email to mechanical-sympathy+unsub...@googlegroups.com.
--
You received this message because you are subscribed to the Google Groups "mechanical-sympathy" group.
To unsubscribe from this group and stop receiving emails from it, send an email to mechanical-sympathy+unsub...@googlegroups.com.
On Wed, Oct 11, 2017 at 12:29 AM, Kirk Pepperdine <ki...@kodewerk.com> wrote:Not at all off topic… first, thread dumps lie like a rug… and here is why…for each thread {safe pointcreate stack trace for that threadrelease threads from safe point}And while rugs may attempt to cover the debris that you’ve swept under them, that debris leaves a clearly visible lump that suggests that you have a congestion problem on locks in both sun.security.provider.Sun and java.lang.Class…. What could possibly go wrong?Interesting. I remember investigating this back in the Java 6 days and at that time 'jstack -l' caused a global safepoint before iterating over the threads, and then only resumed upon completion (implemented by VM_ThreadDump in vm_operations.cpp). It appears that in JDK 7 this was switched over to the behavior that you describe.Either way, I'm looking at about 10 stack traces taken over a period of 3 minutes and they have 100% identical "java-level deadlock" output. So I suppose it's possible that they are live-locked on the same sets of locks in the exact same threads but seems fairly unlikely.
As for the congestion problem, I did find this JDK bug the other day: https://bugs.openjdk.java.net/browse/JDK-8133070 which aims to reduce contention, but no mention of a deadlock. We'll probably ask the customer to bump to a newer JDK with this fix and see if it magically goes away.-Todd
--
You received this message because you are subscribed to the Google Groups "mechanical-sympathy" group.
To unsubscribe from this group and stop receiving emails from it, send an email to mechanical-sympathy+unsub...@googlegroups.com.
If this is not off topic, what is the topic of this group?
Is it a Java support group, or a "coding in a way that exploits the way the hardware works" group?
To unsubscribe from this group and stop receiving emails from it, send an email to mechanical-sympathy+unsub...@googlegroups.com.
--
You received this message because you are subscribed to the Google Groups "mechanical-sympathy" group.
To unsubscribe from this group and stop receiving emails from it, send an email to mechanical-sympathy+unsub...@googlegroups.com.
To unsubscribe from this group and stop receiving emails from it, send an email to mechanical-sympathy+unsub...@googlegroups.com.
The "machine" we run on is not just the hardware. It's also the BIOS, the hypervisor, the kernel, the container system, the system libraries, and the various runtimes. Stuff that is "interesting" and "strange" about how the machine seems to behave is very appropriate to this group, IMO. And mysterious deadlock behaviors and related issues the machine level (e.g. an apparent deadlock where no lock owner appears to exist, as is the case discussed here) is certainly an "interesting" machine behavior. Java for not. libposix or not, Linux or not. C#/C++/Rust or not. The fact that much of concurrency work happens to be done in Java does make Java and JVMs a more common context in which these issues are discussed, but the same can be said about Linux, even tho this is not a Linux support group.E.g. the discussion we had a while back about Linux's futex wakeup bug (where certain kernel versions failed to wake up futex's, creating ()among other things) apparent deadlocks in non-deadlocking code) was presumably appropriate for this group. I see Todd's query as no different. It is not "my program has a deadlock" question. It is an observed "deadlock that isn't a deadlock" question. It may be a bug in tooling/reporting (e.g. tooling might be deducing the deadlock based on non-atomic sampling of stack state as some have suggested here), or it may be a bug in the lock mechanisms. e.g. failed wakeup at the JVM level. Either way, to would be just as interesting and relevant here as a failed wakeup or wrong lock state intrumentation at the Linux kernel level. or at the .NET CLR level, or at the golang runtime level, etc...
To unsubscribe from this group and stop receiving emails from it, send an email to mechanical-symp...@googlegroups.com.
--
You received this message because you are subscribed to the Google Groups "mechanical-sympathy" group.
To unsubscribe from this group and stop receiving emails from it, send an email to mechanical-symp...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
--
You received this message because you are subscribed to the Google Groups "mechanical-sympathy" group.
To unsubscribe from this group and stop receiving emails from it, send an email to mechanical-symp...@googlegroups.com.
--
You received this message because you are subscribed to the Google Groups "mechanical-sympathy" group.
To unsubscribe from this group and stop receiving emails from it, send an email to mechanical-symp...@googlegroups.com.