Issues
- Configuration option to disable presence broadcast for other resources on single userOF-727Resolved issue: OF-727Guus der Kinderen
- Openfire fails to route IQ packets for clients with presence disabledOF-726
- Update bundled MySQL JDBC driver to the newest 5.1.x versionOF-697Resolved issue: OF-697Daryl Herzmann
- Pressing on workgroup in Fastpath causes an exceptionOF-676Resolved issue: OF-676Dele Olajide
- XSS in server2server.jspOF-671Resolved issue: OF-671Tom Evans
- MUC user count not kept in sync across cluster nodesOF-670Resolved issue: OF-670Tom Evans
- Visually failed first login to Admin ConsoleOF-669Resolved issue: OF-669Guus der Kinderen
- Pubsub items (persistent) may be dropped in certain casesOF-668Resolved issue: OF-668Tom Evans
- Monitoring plugin bad SQL for upgradeOF-667Resolved issue: OF-667Leon Roy
- Monitoring archive shows null in room chat logsOF-664Resolved issue: OF-664Leon Roy
- nmap is able to DOS OpenfireOF-663Resolved issue: OF-663Guus der Kinderen
- Ping implementation is broken, it does not forward ping requests.OF-662Resolved issue: OF-662
- Openfire failes to create tables on MySQL 5.6OF-654Resolved issue: OF-654Dele Olajide
- BOSH deadlockOF-653Resolved issue: OF-653Tom Evans
- Add support for X-Forwarded-For (XFF) headers from proxied BOSH clientsOF-650Resolved issue: OF-650Tom Evans
- XmppDateTimeFormat is unable to parse date StringsOF-646Resolved issue: OF-646Florian Schmaus
- javax.net.ssl.SSLException: Received fatal alert: bad_record_macOF-496Resolved issue: OF-496Guus der Kinderen
- Update MINA library to latest versionOF-421Resolved issue: OF-421Tom Evans
- BOSH too picky about content-type with requestsOF-410Resolved issue: OF-410Guus der Kinderen
- Bad-namespace prefix is actually invalid-namespace?OF-183Resolved issue: OF-183Guus der Kinderen
- Openfire sends back Flash policy-request response ONLY for port 5222OF-139Resolved issue: OF-139Guus der Kinderen
- [MUC] Allow nicknames to be used more than once in the same roomOF-103Resolved issue: OF-103Tom Evans
22 of 22
Configuration option to disable presence broadcast for other resources on single user
Fixed
Description
Environment
N/A
Attachments
1
Created February 6, 2014 at 8:08 PM
Updated February 6, 2014 at 9:19 PM
Resolved February 6, 2014 at 9:19 PM
Activity
Show:
Guus der KinderenFebruary 6, 2014 at 9:19 PM
The patch was applied to trunk. Flow raised some concern regarding having the property check in a code path that is executed a lot. Perhaps we could optimize by caching the value temporarily - but for now, let's first see if it'd actually would introduce a notable overhead.
Benjamin ShermanFebruary 6, 2014 at 8:16 PM
I should note, this patch has been running on an instance of OF 3.8.1 for internal automation at Jive Software for nearly one year. We were testing on 3.8.0 before that. We had up to 10,000 smack clients running all as the same user with different resources.
Note: we have since changed to using individual XMPP users for each smack client as this generally is the better path to follow.
This feature works around a specific use case related to how Openfire manages presence notification and automatically keeps peer resources of a given user up-to-date with any and all changes to presence of any other resource for the given user. If a user has a sufficiently large number of resources, e.g. a few thousand clients running as single user with different resources, one can cripple the Openfire server, induce crazy memory usage, garbage collection and network traffic, including crazy memory usage on the clients as all parties try to handle very large presence packets containing an entry per resource which change any time a resource changes state.
This feature works around the issue by giving an optional system property in Opefire which lets you specifically disable presence notification for this edge case.