Build: #238 was successful Scheduled with changes by Guus der Kinderen

Build result summary

Details

Completed
Queue duration
7 minutes
Duration
1 minute
Labels
None
Revision
486ad31778dc309ce9c6f68c8b0063976876b3cb
Total tests
489
Successful since
#1 ()

Tests

Code commits

Author Commit Message Commit date
Guus der Kinderen 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.
Guus der Kinderen 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.

Jira issues

IssueDescriptionStatus
Unknown Issue TypeOF-2499Could not obtain issue details from Jira
Unknown Issue TypeOF-2524Could not obtain issue details from Jira