We're updating the issue view to help you get more done. 

Thread synchronization issues with HttpSession/BOSH

Description

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.

Environment

None

Acceptance Test - Entry

None

Activity

Show:
Tom Evans
September 28, 2012, 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

Tom Evans
September 29, 2012, 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

Neustradamus
November 13, 2012, 1:27 PM

Tom Evans: It is resolved in 3.7.2 version?

Tom Evans
November 13, 2012, 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.

Assignee

Tom Evans

Reporter

Tom Evans

Labels

Expected Effort

None

Ignite Forum URL

None

Components

Fix versions

Affects versions

Priority

Major
Configure