When booting from 3,000 simultaneous sessions and about 300 transactions per second on a Windows 2008 dual-core kernel with a 64-bit server running Java 1.7.0_09, we observed in practice two confirmed examples of false wakeups, i.e. Threads that exit the wait () method without notification and before the wait timeout expires.
During waking up, the processor was less than 20% and a lot of memory was available. Also, there is no excessive garbage collection. Fortunately, our newly introduced spin lock was able to catch this condition and continue to wait ()
Fragment wakeup events are described in JavaDoc java.lang.Object wait (), but this is the first time I actually see this in practice. Is this a bug in Windows or Java?
source share