Hello all
We're having a problem where our application is blocking on
UsageManager.waitForSpace for no obvious reason. The symptoms are very
similar to what was discussed in this thread:
http://www.mail-archive.com/[email protected]/msg06288.html
We set up few sessions with producers and consumers that send two types of
messages, with all message sizes in the low kB range. We're using
non-persistent, non-durable topics to communicate.
The application runs fine for about 2 minutes and during this time
MemoryPercentageUsed (checked with JConsole) remains below 10% the whole
time until it suddenly goes up to 100 and the application stops. Our
application isn't doing any different at the point this abrupt increase
occurs. It produces and consumes the same messages as fast as the CPU allows
the whole time until it blocks.
Running with the JDK 1.6.0 server VM without any extra arguments, according
to JConsole, the maximum heap size is 517 MB. It seems like the hang occurs
each time exactly when the used heap size goes over 200 MB. Running
ith -Xms384m -Xmx512m I see the used heap size go up to 300+ MB then come
back to down to a little more than 200 MB and then when it reaches 260 MB,
it hangs again.
Running the client VM, the hang happens when the used heap size goes over
300 MB, each time.
I'm using Windows XP SP2 with a Core 2 Duo processor.
Any thoughts?
Cheers,
Albert Strasheim
P. S. JConsole doesn't report any deadlocks in ActiveMQ or our application,
so it looks like it really is blocking on UsageManager.waitForSpace.