We are observing significant thread contention (locking/blocking) in the BOSH connector under high loads. It appears that the HttpSession class is a bit over-synchronized. Thread dump is attached.
The bug is that: http://issues.igniterealtime.org/browse/OF-81
http://community.igniterealtime.org/message/213437
http://issues.igniterealtime.org/browse/OF-335
http://community.igniterealtime.org/message/224904
http://issues.igniterealtime.org/browse/JM-1412
http://issues.igniterealtime.org/browse/JM-1033
Thanks for linking some of the relevant background info ... agree the eventual solution should be a new BOSH connector to replace the existing http-bind implementation.
Note also there have been a few fixes recently that appear to have improved the current implementation, so perhaps we can keep the momentum going:
http://issues.igniterealtime.org/browse/OF-558
http://issues.igniterealtime.org/browse/OF-342
Made the following changes for the http-bind connector:
removed most synchronization points on HttpSession instances
added synchronization controls on collections within HttpSession
added JiveGlobals properties for additional tuning/configuration options (httpbind.client.processing.threads, xmpp.httpbind.session.initial.count)
cleaned up some sieve methods (having multiple exit points)
updated RPM spec to include static web context resources
Tom Evans: It is resolved in 3.7.2 version?
@Neustradamus: Yes, I believe so. We have been testing this fix for a while now and it seems stable. You can pick up the changes from the nightly build or from the SVN trunk.