6.0.0-beta1
▾
Tasks
New Task
Search
Photos
Wiki
▾
Tickets
New Ticket
Search
dev.horde.org
Toggle Alerts Log
Help
8/11/25
H
istory
A
ttachments
C
omment
W
atch
Download
Comment on [#12770] Sync "loop" of Kolab categories <-> Horde tags sync
*
Your Email Address
*
Spam protection
Enter the letters below:
. ,.__ .__..__..___. \./ [__)| |[__] | | | \|__\| | |
Comment
> Hi, > > 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. Yikes. > > Please consider the attached patch, which makes the > tag comparison case insensitive. > > If the patch gets approved, we need to fix > the tag sync of the other applications, too. > > Another option would be to make the tagger backend > case sensitive, but that would lead to duplicate entries > because of lower / uppercase spelling. Not really an option. > > Without the patch, browsing around in the calendar > takes about seven seconds for each click on a box with a SSD. > With the patch it's about one second. > > Note: I removed the strcoll() based sorting, it is of no use, > array_diff() does not care about the order of elements. > > Cheers, > Thomas >
Attachment
Watch this ticket
N
ew Ticket
M
y Tickets
S
earch
Q
uery Builder
R
eports
Saved Queries
Open Bugs
Bugs waiting for Feedback
Open Bugs in Releases
Open Enhancements
Enhancements waiting for Feedback
Bugs with Patches
Enhancements with Patches
Release Showstoppers
Stalled Tickets
New Tickets
Horde 5 Showstoppers