Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Fix sync "loop" of Kolab categories <-> Horde tags sync. Fixes #12770.
Consider this scenario with a new, empty calendar: 1. User inserts the first event. The event is tagged with "foobar". This tag is inserted into the tagging backend. 2. User creates another event with a foreign Kolab client. This event is tagged "Foobar" (noticed the capital 'F') 3. kronolith syncs in the foreign event. The Kolab sync tells the tag backend to store the tag(s) for the new event object, it does a case insensitive search for an existing tag label. -> it picks the existing row id of "foobar". The next time Event::synchronizeTags() runs, it notices the tags given by the Kolab driver for the second event differ from the tag backend ("Foobar" != "foobar") -> A sync is triggered. I have a productive calendar with about 2.000 events. The sync "loop" produces 3.6000+ INSERT / UPDATE statements on every click. Fix it by making the tag label comparison case insensitive. Signed-off-by: Michael J Rubinsky <mrubinsk@horde.org>
- Loading branch information