Build: #10 was successful
Job: RPM Workflow was successful
Code commits
Openfire (master)
-
daryl herzmann <akrherz@iastate.edu> 51b9db96d0f8611f768178901407dff05ee20f28
Merge pull request #2141 from akrherz/release_474
denote Openfire 4.7.4 release -
akrherz <akrherz@iastate.edu> f3099fe9c65f8da04470e064bd65da40a80bf2c4
denote Openfire 4.7.4 release
- distribution/pom.xml (version f3099fe9c65f8da04470e064bd65da40a80bf2c4)
- i18n/pom.xml (version f3099fe9c65f8da04470e064bd65da40a80bf2c4)
- plugins/openfire-plugin-assembly-descriptor/pom.xml (version f3099fe9c65f8da04470e064bd65da40a80bf2c4)
- plugins/pom.xml (version f3099fe9c65f8da04470e064bd65da40a80bf2c4)
- pom.xml (version f3099fe9c65f8da04470e064bd65da40a80bf2c4)
- starter/pom.xml (version f3099fe9c65f8da04470e064bd65da40a80bf2c4)
- xmppserver/changelog.html (version f3099fe9c65f8da04470e064bd65da40a80bf2c4)
- xmppserver/pom.xml (version f3099fe9c65f8da04470e064bd65da40a80bf2c4)
- xmppserver/src/main/java/org/jivesoftware/openfire/spi/XMPPServerInfoImpl.java (version f3099fe9c65f8da04470e064bd65da40a80bf2c4)
-
Guus der Kinderen e65c35bee793b97177bd63de532b362d284d0c53
OF-2537: Advertise support for pubsub's 'multi-item' feature
XEP-0060 defines, amongst many others, the 'multi-items' service discovery feature.
This feature can be advertised by a pubsub service, when clients are allowed to configure a node in such a way that it can accept more-than-one item, by:
- setting `persist_items` to `true`
- setting `max_items` to a value higher than 1.
Openfire supports allows for both. It can/should advertise the feature `http://jabber.org/protocol/pubsub#multi-items` on its pubsub services.- xmppserver/src/main/java/org/jivesoftware/openfire/pubsub/PubSubModule.java (version e65c35bee793b97177bd63de532b362d284d0c53)
-
Guus der Kinderen 3a0fb56650480bff8f01595dde70f00c607e010e
OF-2525: Deprecate non-persisting XMLProperties API
This aims to prevent accidental usage of XMLProperties instances that cannot persist changes. This is achieved by deprecating all constructors that create such an instance, replacing them with an aptly named static method.- xmppserver/src/main/java/org/jivesoftware/util/JiveGlobals.java (version 3a0fb56650480bff8f01595dde70f00c607e010e)
- xmppserver/src/main/java/org/jivesoftware/util/XMLProperties.java (version 3a0fb56650480bff8f01595dde70f00c607e010e)
- xmppserver/src/test/java/org/jivesoftware/util/XMLPropertiesTest.java (version 3a0fb56650480bff8f01595dde70f00c607e010e)
-
Dan Caseley <dan@caseley.me.uk> 15933dd3833af8898f114106e11722ff213abb2d
OF-2415: Allow empty plugins directory at boot time in Docker entrypoint
- build/docker/entrypoint.sh (version 15933dd3833af8898f114106e11722ff213abb2d)
-
Guus der Kinderen ebfdb8be847384f48335847e73e83c178b0d9e18
Revert "OF-2505: BOSH: add back-pressure to network IO when processing can't keep up"
This reverts commit ea8d385bc4787fbd5230a4947671560e627f3547.- i18n/src/main/resources/openfire_i18n.properties (version ebfdb8be847384f48335847e73e83c178b0d9e18)
- xmppserver/src/main/java/org/jivesoftware/openfire/http/HttpSessionManager.java (version ebfdb8be847384f48335847e73e83c178b0d9e18)
- xmppserver/src/main/java/org/jivesoftware/openfire/util/ThreadPoolExecutorRejectionPolicy.java (version ebfdb8be847384f48335847e73e83c178b0d9e18)
- xmppserver/src/main/java/org/jivesoftware/util/BlocksOnOfferQueue.java (version ebfdb8be847384f48335847e73e83c178b0d9e18)
-
Guus der Kinderen 2ecd49a5522efb3db282a443f27b750fe81775df
Revert "OF-2530: Optimize MUC Message History cache usage"
This reverts commit 8ea20d392fe85aacf8e7eb834de05cc11fbc7291.- xmppserver/src/main/java/org/jivesoftware/openfire/muc/HistoryStrategy.java (version 2ecd49a5522efb3db282a443f27b750fe81775df)
- xmppserver/src/main/java/org/jivesoftware/util/cache/CacheFactory.java (version 2ecd49a5522efb3db282a443f27b750fe81775df)
-
Guus der Kinderen 4f9fa577d381982493a19659bdd96cf396adb40e
OF-2531: Remove unneeded JID-based lock in MUC
To fix https://igniterealtime.atlassian.net/browse/OF-1649 a user/JID-based lock was introduced. This lock made the creation of a user-and-joining-a-room atomic with respect to the cleanup action remove-all-users-that-are-not-in-any-room.
With the rewrite of MUC in https://igniterealtime.atlassian.net/browse/OF-2224 (and friends), the cleanup of users is no longer based on room membership, but on duration since last activity. This will prevent https://igniterealtime.atlassian.net/browse/OF-1649. The lock that was put in place now no longer serves a purpose, and should be removed.- xmppserver/src/main/java/org/jivesoftware/openfire/muc/spi/MultiUserChatServiceImpl.java (version 4f9fa577d381982493a19659bdd96cf396adb40e)
-
Guus der Kinderen 8ea20d392fe85aacf8e7eb834de05cc11fbc7291
OF-2530: Optimize MUC Message History cache usage
When reading or writing cached MUC messages, the entire collection of messages is serialized between cluster nodes. This adds an unacceptable amount of overhead, for every message that is added.
In this commit, the singular cached entity (a list of messages), is separated into two parts:
- A cached entity that represents a list of message references per chatroom
- messages, by reference
The purpose of this is to optimize the scenario of adding a message (which is expected to happen more frequently than reading the history). By having to update only a list of references, instead of a list of actual objects, the amount of data that is to be operated on is reduced significantly.- xmppserver/src/main/java/org/jivesoftware/openfire/muc/HistoryStrategy.java (version 8ea20d392fe85aacf8e7eb834de05cc11fbc7291)
- xmppserver/src/main/java/org/jivesoftware/util/cache/CacheFactory.java (version 8ea20d392fe85aacf8e7eb834de05cc11fbc7291)
-
Dan Caseley <dan@caseley.me.uk> 4bed54f50e986915dfbad58b3ae731984d2ea055
Update apache commons-text from 1.6 to 1.10.0
- xmppserver/pom.xml (version 4bed54f50e986915dfbad58b3ae731984d2ea055)
-
Guus der Kinderen 6a6e9beb22d9e6411c0ee935987d1ab6467ccd65
fixup log statement
- xmppserver/src/main/java/org/jivesoftware/openfire/handler/IQBindHandler.java (version 6a6e9beb22d9e6411c0ee935987d1ab6467ccd65)
-
Guus der Kinderen a55709c242a8a22c467c071f0c64f4604047cc3c
Add debug logging to resource bind processing.
- xmppserver/src/main/java/org/jivesoftware/openfire/handler/IQBindHandler.java (version a55709c242a8a22c467c071f0c64f4604047cc3c)
-
Dan Caseley <dan@caseley.me.uk> 807ff057a0ef6ebe98a897ef4b6a2ce7df4aaa89
OF-2528: Migrate set-output to use $GITHUB_OUTPUT
- .github/workflows/continuous-integration-workflow.yml (version 807ff057a0ef6ebe98a897ef4b6a2ce7df4aaa89)
- .github/workflows/macos-release-artifact.yml (version 807ff057a0ef6ebe98a897ef4b6a2ce7df4aaa89)
-
Guus der Kinderen 486ad31778dc309ce9c6f68c8b0063976876b3cb
OF-2524: Add database index for MUC room log retrieval
When loading the MUC room history for a single room, a query is executed that is not optimized by the existing database indexes:
`SELECT sender, nickname, logTime, subject, body, stanza FROM ofMucConversationLog WHERE logTime>? AND roomID=? AND (nickname IS NOT NULL OR subject IS NOT NULL) ORDER BY logTime`
On Ignite's server, this takes more than 400 milliseconds to execute.
When room preloading is disabled, all rooms that are being used need to be loaded from memory. Looking at the admin console will load all rooms on that page. If that contains 25 rooms, then this query alone causes a delay of many seconds before the page is loaded.- distribution/src/database/openfire_db2.sql (version 486ad31778dc309ce9c6f68c8b0063976876b3cb)
- distribution/src/database/openfire_hsqldb.sql (version 486ad31778dc309ce9c6f68c8b0063976876b3cb)
- distribution/src/database/openfire_mysql.sql (version 486ad31778dc309ce9c6f68c8b0063976876b3cb)
- distribution/src/database/openfire_oracle.sql (version 486ad31778dc309ce9c6f68c8b0063976876b3cb)
- distribution/src/database/openfire_postgresql.sql (version 486ad31778dc309ce9c6f68c8b0063976876b3cb)
- distribution/src/database/openfire_sqlserver.sql (version 486ad31778dc309ce9c6f68c8b0063976876b3cb)
- distribution/src/database/openfire_sybase.sql (version 486ad31778dc309ce9c6f68c8b0063976876b3cb)
- distribution/src/database/upgrade/34/openfire_db2.sql (version 486ad31778dc309ce9c6f68c8b0063976876b3cb)
- distribution/src/database/upgrade/34/openfire_hsqldb.sql (version 486ad31778dc309ce9c6f68c8b0063976876b3cb)
- distribution/src/database/upgrade/34/openfire_mysql.sql (version 486ad31778dc309ce9c6f68c8b0063976876b3cb)
- distribution/src/database/upgrade/34/openfire_oracle.sql (version 486ad31778dc309ce9c6f68c8b0063976876b3cb)
- distribution/src/database/upgrade/34/openfire_postgresql.sql (version 486ad31778dc309ce9c6f68c8b0063976876b3cb)
- distribution/src/database/upgrade/34/openfire_sqlserver.sql (version 486ad31778dc309ce9c6f68c8b0063976876b3cb)
- distribution/src/database/upgrade/34/openfire_sybase.sql (version 486ad31778dc309ce9c6f68c8b0063976876b3cb)
- xmppserver/src/main/java/org/jivesoftware/database/SchemaManager.java (version 486ad31778dc309ce9c6f68c8b0063976876b3cb)
-
Guus der Kinderen 67510a07f373fddd5fb0c9e20f79d2ebc8dae76f
OF-2524: Add MUC message history in bulk
Instead of loading message and adding to MUC room history one-by-one, do this in a batch.
With OF-2499, adding a message requires a lock to be held. In clustering, the repeated acquiring and releasing of that lock adds notable delays.
This commit prevents much of this overhead by adding all history in one go, replacing the lock contention for each message, with one singular lock.- xmppserver/src/main/java/org/jivesoftware/openfire/muc/HistoryStrategy.java (version 67510a07f373fddd5fb0c9e20f79d2ebc8dae76f)
- xmppserver/src/main/java/org/jivesoftware/openfire/muc/MUCRoomHistory.java (version 67510a07f373fddd5fb0c9e20f79d2ebc8dae76f)
- xmppserver/src/main/java/org/jivesoftware/openfire/muc/spi/FMUCHandler.java (version 67510a07f373fddd5fb0c9e20f79d2ebc8dae76f)
- xmppserver/src/main/java/org/jivesoftware/openfire/muc/spi/MUCPersistenceManager.java (version 67510a07f373fddd5fb0c9e20f79d2ebc8dae76f)
-
akrherz <akrherz@iastate.edu> 8510fea00b33fc9ce905b1d44f49453a6a41fb55
take install4j schema update verbatim
- distribution/src/installer/openfire.install4j (version 8510fea00b33fc9ce905b1d44f49453a6a41fb55)
-
Guus der Kinderen b6217cbd03c91979577e6c2cf80dfb104cdbb1a7
OF-2519: Fix MUC room membership with groups
When loading an individual room (eg: at boot time, when room preloading is disabled), ensure that a MUC room member JID is evaluated as a group JID.- xmppserver/src/main/java/org/jivesoftware/openfire/muc/spi/MUCPersistenceManager.java (version b6217cbd03c91979577e6c2cf80dfb104cdbb1a7)
-
Guus der Kinderen 1b6722fdd8d660c6a60509c3ad252041220f47e0
OF-2518: Attempt to load favicon over HTTPS
This adds an additional attempt to load the favicon. With this, both HTTPS and HTTP are attempted.
Additionally, the URL that's used is now being constructed through a builder, which should further reduce the attack vector of using 'user-provided input'.- xmppserver/src/main/java/org/jivesoftware/util/FaviconServlet.java (version 1b6722fdd8d660c6a60509c3ad252041220f47e0)
-
Guus der Kinderen 665b2efd00444e617b2fc8815b2110964691173c
Remove suppressing of LGTM warning (since it has been addressed)
- xmppserver/src/main/java/org/jivesoftware/util/FaviconServlet.java (version 665b2efd00444e617b2fc8815b2110964691173c)
-
Guus der Kinderen 5ea449b3dbd77434a78e7f07e2e4cdd035e31d32
Update CodeQL action from v1 to v2
v1 is being deprecated: https://github.blog/changelog/2022-04-27-code-scanning-deprecation-of-codeql-action-v1/- .github/workflows/codeql-analysis.yml (version 5ea449b3dbd77434a78e7f07e2e4cdd035e31d32)
-
Dan Caseley <dan@caseley.me.uk> 78241d7f3cca90e3176e9c84172788e7c6a17d69
OF-2516: Add tooltips for RX/TX columns on session info
- i18n/src/main/resources/openfire_i18n.properties (version 78241d7f3cca90e3176e9c84172788e7c6a17d69)
- i18n/src/main/resources/openfire_i18n_cs_CZ.properties (version 78241d7f3cca90e3176e9c84172788e7c6a17d69)
- i18n/src/main/resources/openfire_i18n_de.properties (version 78241d7f3cca90e3176e9c84172788e7c6a17d69)
- i18n/src/main/resources/openfire_i18n_es.properties (version 78241d7f3cca90e3176e9c84172788e7c6a17d69)
- i18n/src/main/resources/openfire_i18n_fr.properties (version 78241d7f3cca90e3176e9c84172788e7c6a17d69)
- i18n/src/main/resources/openfire_i18n_ja_JP.properties (version 78241d7f3cca90e3176e9c84172788e7c6a17d69)
- i18n/src/main/resources/openfire_i18n_nl.properties (version 78241d7f3cca90e3176e9c84172788e7c6a17d69)
- i18n/src/main/resources/openfire_i18n_pl_PL.properties (version 78241d7f3cca90e3176e9c84172788e7c6a17d69)
- i18n/src/main/resources/openfire_i18n_pt_BR.properties (version 78241d7f3cca90e3176e9c84172788e7c6a17d69)
- i18n/src/main/resources/openfire_i18n_pt_PT.properties (version 78241d7f3cca90e3176e9c84172788e7c6a17d69)
- i18n/src/main/resources/openfire_i18n_ru_RU.properties (version 78241d7f3cca90e3176e9c84172788e7c6a17d69)
- i18n/src/main/resources/openfire_i18n_sk.properties (version 78241d7f3cca90e3176e9c84172788e7c6a17d69)
- i18n/src/main/resources/openfire_i18n_zh_CN.properties (version 78241d7f3cca90e3176e9c84172788e7c6a17d69)
- xmppserver/src/main/webapp/component-session-details.jsp (version 78241d7f3cca90e3176e9c84172788e7c6a17d69)
- xmppserver/src/main/webapp/session-details.jsp (version 78241d7f3cca90e3176e9c84172788e7c6a17d69)
- xmppserver/src/main/webapp/session-summary.jsp (version 78241d7f3cca90e3176e9c84172788e7c6a17d69)
-
Guus der Kinderen acf2def9b15a8806935d6e0f956ce7fa260ab8dd
OF-2516: Show session TX/RX instead of prio on admin console
The admin console's "Session Summary" page lists all client sessions and shows some data.
With this commit, the 'priority' value (which is hardly used) is replaced by TX and RX values, that give an indication of activity (as it shows the amount of stanzas exchanged between client and server).- i18n/src/main/resources/openfire_i18n.properties (version acf2def9b15a8806935d6e0f956ce7fa260ab8dd)
- xmppserver/src/main/webapp/session-row.jspf (version acf2def9b15a8806935d6e0f956ce7fa260ab8dd)
- xmppserver/src/main/webapp/session-summary.jsp (version acf2def9b15a8806935d6e0f956ce7fa260ab8dd)
-
Guus der Kinderen 1ef403baf977864d461f0f0d49c5e96a1d571ca5
OF-2517: Fix 'packet sent' count for BOSH connections
Openfire keeps track of the amount of stanzas sent through a connection. For BOSH connections, the outgoing count was never updated. This is fixed in this commit.
This change also ensures that a 'last activity' field is updated more frequently. This could improve the stability of BOSH connections.- xmppserver/src/main/java/org/jivesoftware/openfire/http/HttpSession.java (version 1ef403baf977864d461f0f0d49c5e96a1d571ca5)
-
Guus der Kinderen c052c0ebae5b3613fcc39beb4020ed0ccb1084ed
OF-2512: Fix for long custom user lockout values
When using a longer value as a custom amount of lock-out minutes, the multiplication of two integers overflows the maximum integer value. Using longs instead of ints prevents this.- xmppserver/src/main/webapp/user-lockout.jsp (version c052c0ebae5b3613fcc39beb4020ed0ccb1084ed)
-
Guus der Kinderen 78a791d360ea34de93b69e23f80bf1dfb4893985
OF-2511: Prevent loading unused historic messages for MUC rooms.
Typically, rooms are configured to retain only 25 message of history, to be sent to clients that join a room (note that this does _not_ relate at all to MAM).
When loading a room from the database, Openfire should not load _all_ messages from the database, but only the ones that are potentially going to be sent to clients. For rooms which a large history, this saves a considerable amount of resources.
This commit uses somewhat of a hack that is based on database driver functionality (skipping ahead in the resultset), as opposed to modifying the SQL query that is used to obtain the records. Such modification would likely depend on non-standardized SQL staments (TOP / LIMIT / ROWNUM), which would introduce the need for database-vendor specific code.- xmppserver/src/main/java/org/jivesoftware/openfire/muc/HistoryStrategy.java (version 78a791d360ea34de93b69e23f80bf1dfb4893985)
- xmppserver/src/main/java/org/jivesoftware/openfire/muc/MUCRoomHistory.java (version 78a791d360ea34de93b69e23f80bf1dfb4893985)
- xmppserver/src/main/java/org/jivesoftware/openfire/muc/spi/MUCPersistenceManager.java (version 78a791d360ea34de93b69e23f80bf1dfb4893985)
-
Guus der Kinderen f14c7c6325bbebb0d90836811cd8bd356c34954b
OF-2509: openfirectl should store PID value
This fixes a bug in the openfirectl script that failed to store the PID of the Openfire process that it just started.- distribution/src/bin/openfirectl (version f14c7c6325bbebb0d90836811cd8bd356c34954b)
-
akrherz <akrherz@iastate.edu> ee7425ba50d33872b181ea38156ea3e19ffdcfc1
rethink mac CI release artifact task
- .github/workflows/macos-release-artifact.yml (version ee7425ba50d33872b181ea38156ea3e19ffdcfc1)
-
akrherz <akrherz@iastate.edu> 66bb8ac4d517112c7620660ed5ba362ab98cc623
CI: reorder commands to workaround unknown troubles
- .github/workflows/macos-release-artifact.yml (version 66bb8ac4d517112c7620660ed5ba362ab98cc623)
-
akrherz <akrherz@iastate.edu> 249f5b0cd172549c00e2196ca013f98dd56ad51f
create macos github action job for releases
- .github/workflows/macos-release-artifact.yml (version 249f5b0cd172549c00e2196ca013f98dd56ad51f)
-
Guus der Kinderen ea8d385bc4787fbd5230a4947671560e627f3547
OF-2505: BOSH: add back-pressure to network IO when processing can't keep up
For BOSH and websocket connections, this commit introduces a new feature (disabled by default) that allows Openfire to be configured to apply 'back pressure' that could be useful in a scenario where the network IO thread pool is outpacing the processing thread pool.
By enabling the feature using `xmpp.httpbind.worker.backpressure-enabled` (and setting the queue to a limited value with `xmpp.httpbind.worker.queue-capacity`, the queuing of new tasks by the network IO thread pool blocks when the queue is at capacity.- i18n/src/main/resources/openfire_i18n.properties (version ea8d385bc4787fbd5230a4947671560e627f3547)
- xmppserver/src/main/java/org/jivesoftware/openfire/http/HttpSessionManager.java (version ea8d385bc4787fbd5230a4947671560e627f3547)
- xmppserver/src/main/java/org/jivesoftware/openfire/util/ThreadPoolExecutorRejectionPolicy.java (version ea8d385bc4787fbd5230a4947671560e627f3547)
- xmppserver/src/main/java/org/jivesoftware/util/BlocksOnOfferQueue.java (version ea8d385bc4787fbd5230a4947671560e627f3547)
-
Guus der Kinderen 465dc4a93653750981aba0a3ae66b6d433a28db7
OF-2499: Prevent repeated JDBC queries for rooms without history
- xmppserver/src/main/java/org/jivesoftware/openfire/muc/HistoryStrategy.java (version 465dc4a93653750981aba0a3ae66b6d433a28db7)
-
Guus der Kinderen 4f1ee41c4aeffb50667ec2d677d762013fcff84d
OF-2504: Replace broken MINA JMX monitoring
The MINA-provided JMX beans are not functional (they throw runtime exceptions). This commit replaces them with generic executor thread pool MBeans. These give less data, but work.- xmppserver/src/main/java/org/jivesoftware/openfire/spi/MINAConnectionAcceptor.java (version 4f1ee41c4aeffb50667ec2d677d762013fcff84d)
-
Guus der Kinderen 95a16fdab5248be4efb5b954740706c9300e00b2
OF-2502: Do not iterate over clustered cache when calculating stats
When collecting statistics, two MUC methods iterate over caches. That is inefficient in itself, but the cache can also be clustered. If that's the case, then a lot of data serialization, which is a waste of resources.
This commit introduces a new cache in which statistics can be stored. This way, the statistics need not be recalculated every time, saving resources at the expense of potential inaccuracy.- xmppserver/src/main/java/org/jivesoftware/openfire/muc/spi/LocalMUCRoomManager.java (version 95a16fdab5248be4efb5b954740706c9300e00b2)
- xmppserver/src/main/java/org/jivesoftware/openfire/muc/spi/MultiUserChatServiceImpl.java (version 95a16fdab5248be4efb5b954740706c9300e00b2)
-
Guus der Kinderen b1d1e50e783bccbe87167adc01808f5cf66ff807
OF-2499: Allow MUC history to be loaded 'on demand'
Now that MUC history is stored in a cache, this cache might unexpectedly _not_ contain data. This typically occurs around events that relate to joining or leaving a cluster.
With this change, the room history is loaded on demand from the database when it's not already present in the cache.- xmppserver/src/main/java/org/jivesoftware/openfire/muc/HistoryStrategy.java (version b1d1e50e783bccbe87167adc01808f5cf66ff807)
- xmppserver/src/main/java/org/jivesoftware/openfire/muc/spi/LocalMUCRoomManager.java (version b1d1e50e783bccbe87167adc01808f5cf66ff807)
- xmppserver/src/main/java/org/jivesoftware/openfire/muc/spi/MUCPersistenceManager.java (version b1d1e50e783bccbe87167adc01808f5cf66ff807)
- xmppserver/src/main/java/org/jivesoftware/openfire/muc/spi/MultiUserChatServiceImpl.java (version b1d1e50e783bccbe87167adc01808f5cf66ff807)
-
Guus der Kinderen 9af5af48f8127ba63a9b4405a9d23143a09616de
OF-2499: No longer serialize MUC history with room
As suggested in a 'TODO' comment in code, this replaces the MUC history that is stored inline with each MUC room, with a cache lookup.
This change intends to result in a performance boost, as retrieving/storing MUC rooms from a cache (and serializing them between cluster nodes) no longer includes the history. The data associated with history is typically very large (~50kb for 25 messages), but changes a lot less often than the room itself.- xmppserver/src/main/java/org/jivesoftware/openfire/muc/HistoryStrategy.java (version 9af5af48f8127ba63a9b4405a9d23143a09616de)
- xmppserver/src/main/java/org/jivesoftware/openfire/muc/MUCRoom.java (version 9af5af48f8127ba63a9b4405a9d23143a09616de)
- xmppserver/src/main/java/org/jivesoftware/openfire/muc/MUCRoomHistory.java (version 9af5af48f8127ba63a9b4405a9d23143a09616de)
- xmppserver/src/main/java/org/jivesoftware/openfire/muc/spi/MultiUserChatServiceImpl.java (version 9af5af48f8127ba63a9b4405a9d23143a09616de)
- xmppserver/src/main/java/org/jivesoftware/util/cache/CacheFactory.java (version 9af5af48f8127ba63a9b4405a9d23143a09616de)
- xmppserver/src/test/java/org/jivesoftware/openfire/muc/HistoryStrategyTest.java (version 9af5af48f8127ba63a9b4405a9d23143a09616de)
- xmppserver/src/test/java/org/jivesoftware/openfire/muc/MUCRoomTest.java (version 9af5af48f8127ba63a9b4405a9d23143a09616de)
-
Guus der Kinderen 4f1bc67852307222420e37c89f0bae06930a7328
OF-2497: align non-prefetched and prefetched room history loading
With respect to the loading of MUC room history, Openfire should not behave differently when a room is 'pre-loaded' or not. Previously, the reload limit (days of history to load) defaulted to 2 days for non-preloaded rooms, while preloaded rooms did not have such a default.- xmppserver/src/main/java/org/jivesoftware/openfire/muc/spi/MUCPersistenceManager.java (version 4f1bc67852307222420e37c89f0bae06930a7328)
-
Guus der Kinderen 1360aa307d180fe93dde9f0eff90275ffbc72de2
OF-2498: Reduce MUCRole cache size calculations
Whenever a MUCRole instance is being added to a cache, its size is being calculated. This is rather resource intensive.
MUCRole instances are largely immutable: the cache size is unlikely to change a lot. To reduce the amount of recalculations, this change retains the last calculated size for an instance, resetting it only when a change has been applied.- xmppserver/src/main/java/org/jivesoftware/openfire/muc/MUCRole.java (version 1360aa307d180fe93dde9f0eff90275ffbc72de2)
-
Guus der Kinderen 61983eb33651e576b5040b612cea2c8d28278204
OF-2498: Speed up MUCRoom cache size calculation
To calculate the cache size of a MUC room instance, the pre-existing calculation iterated over all messages that it was maintaining as part of the message history strategy. This is a very resource intensive way of calculating the cache size. This commit replaces this with a hardcoded size that is roughly equal to having 25 messages kept in history. This reduces the occuracy of the calculated value, but improves the calculation time dramatically.- xmppserver/src/main/java/org/jivesoftware/openfire/muc/MUCRoom.java (version 61983eb33651e576b5040b612cea2c8d28278204)
-
Guus der Kinderen 1fcc6d07f2faec42c74efe08cc3efcd7aef55294
OF-2498: Optimize OccupantManager#registerActivity
Whenever any occupant sends some kind of stanza, a 'last activity' timestamp is being updated in OccupantManager. This process should be efficient, but has not been.
This commit introduces a lookup by JID for the occupant to be updated. This replaces a strategy where all occupants were iterated over to find the correct item to update.- xmppserver/src/main/java/org/jivesoftware/openfire/muc/spi/OccupantManager.java (version 1fcc6d07f2faec42c74efe08cc3efcd7aef55294)
- xmppserver/src/test/java/org/jivesoftware/openfire/muc/spi/OccupantManagerTest.java (version 1fcc6d07f2faec42c74efe08cc3efcd7aef55294)
-
Guus der Kinderen 5f4fd2f8fabdc11b36fab41652699cbc66204f6a
OF-2495: Websocket onError handler prevents earlier data to be processed
This commit ensures that the handling of the onError event is done in the same thread pool as that is using data. This should help ensure that those events are handled in roughly the same order. This in turn prevents data that has been supplied previously from going unprocessed, because the onError handler is executed 'early'.- xmppserver/src/main/java/org/jivesoftware/openfire/websocket/XmppWebSocket.java (version 5f4fd2f8fabdc11b36fab41652699cbc66204f6a)
-
Hamza Öztürk <hamza.ozturk@busoft.com.tr> 2e5ba66ea6aea31dbbbb58a1ccb9e4f056f26af9
Update server-restart.jsp
Typo- xmppserver/src/main/webapp/server-restart.jsp (version 2e5ba66ea6aea31dbbbb58a1ccb9e4f056f26af9)
-
akrherz <akrherz@iastate.edu> 53bbe8f1fa3cf6c574ec3e18b8e1a9014d93ee9c
march version to 4.7.4-SNAPSHOT
- distribution/pom.xml (version 53bbe8f1fa3cf6c574ec3e18b8e1a9014d93ee9c)
- i18n/pom.xml (version 53bbe8f1fa3cf6c574ec3e18b8e1a9014d93ee9c)
- plugins/openfire-plugin-assembly-descriptor/pom.xml (version 53bbe8f1fa3cf6c574ec3e18b8e1a9014d93ee9c)
- plugins/pom.xml (version 53bbe8f1fa3cf6c574ec3e18b8e1a9014d93ee9c)
- pom.xml (version 53bbe8f1fa3cf6c574ec3e18b8e1a9014d93ee9c)
- starter/pom.xml (version 53bbe8f1fa3cf6c574ec3e18b8e1a9014d93ee9c)
- xmppserver/pom.xml (version 53bbe8f1fa3cf6c574ec3e18b8e1a9014d93ee9c)
- xmppserver/src/main/java/org/jivesoftware/openfire/spi/XMPPServerInfoImpl.java (version 53bbe8f1fa3cf6c574ec3e18b8e1a9014d93ee9c)