Thread synchronization issues with HttpSession/BOSH
Description
Environment
Attachments
- 27 Sep 2012, 06:00 PM
Activity
Tom Evans November 13, 2012 at 4:25 PM
@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.
Neustradamus November 13, 2012 at 1:27 PM
Tom Evans: It is resolved in 3.7.2 version?
Tom Evans September 29, 2012 at 12:37 AM
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 September 28, 2012 at 10:49 PM
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
Neustradamus September 27, 2012 at 8:35 PM
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
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.