Page MenuHomePhorge

A set of performance improvements
ClosedPublic

Authored by machniak on Feb 24 2016, 6:13 PM.
Tags
None
Referenced Files
Unknown Object (File)
Mon, Apr 22, 2:18 PM
Unknown Object (File)
Tue, Apr 9, 3:35 AM
Unknown Object (File)
Mar 11 2024, 12:20 PM
Unknown Object (File)
Mar 7 2024, 10:56 PM
Unknown Object (File)
Mar 1 2024, 11:11 PM
Unknown Object (File)
Feb 29 2024, 3:17 PM
Unknown Object (File)
Feb 9 2024, 11:04 PM
Unknown Object (File)
Jan 25 2024, 4:03 AM
Subscribers
None

Details

Summary

Performance: Consolidate metadata requests (#3989)

This changes number of cache requests from 4 to 2 for each groupware folder.

Performance: Don't initialize all folders in driver constructor (#3971)

Fix regression in last optimisations

Performance: Optimize kolab_storage_folder::get_object() to use one sql query instead of two

Before the change to get an object by UID we first resolve UID to IMAP-UID
and then fetch the object data by IMAP-UID - two select queries. Now we
directly select the data by UID.

Performance: Limit number of SQL queries needed for "object relations update" operation

Performance: Limit number of SQL queries when "attaching" relations/tags to list of tasks/notes (#3969)

Performance: Optimize get_message_relations() to use one query per-folder less

Fix bug where in kolab_storage::select() could not initialize/reset folder cache properly

Performance: Skip another few cache selects

Performance: Get event-to-mail relations once per events list, instead of doing SELECT for every event (including recurrences)

Unify mail-relations handling across plugins

Performance: Use initialized calendars if available, skipping redundant folder cache synchronization

Performance: Don't initialize configuration folders until they are needed

Performance: Skip redundant SELECTs on mail preview and print pages

Performance: Skip some redundant SELECT queries on event update

Performance: Skip one SELECT query when deleting relations

Performance: Better displayname annotation handling

Performance: SKip some SQL queries on "empty" tasklist refresh

Performance: Make objects moving faster (less SQL and less IMAP operations) using COPYUID

Merge remote-tracking branch 'remotes/origin/dev/perf'

Diff Detail

Repository
rRPK roundcubemail-plugins-kolab
Lint
Lint Not Applicable
Unit
Tests Not Applicable

Event Timeline

machniak retitled this revision from to A set of performance improvements.
machniak updated this object.
machniak edited the test plan for this revision. (Show Details)
This revision was automatically updated to reflect the committed changes.