Hello everyone!
After migrating the first mailboxes and having them used the first few weeks I ran into a curious problem:
One mailbox that is being used on multiple computers via Outlook MAPI the synchronisation of categories in Outlook stopped to work in the Inbox folder but only for delivered mails.
So if a new mail arrives (doesn't matter if external, from another user on the same system or from the same user writing it to themselves) synchronizing edits to the mail body / subject, (un-)/read status and deletion of the message do synchronize to all clients. Adding or removing an Outlook category does only show on the client where the changes were made.
Additionally, if the read-status of the mail is being changed after a category was added, the change will not be synchronized to the Outlook Clients where the category was not synchronized to.
In the web-gui I can see that the tag of the category is being added, so I know that the information is being transfered to the server.
Also, if the category was added to a message, that had yet to be synchronized on the other Outlook client (e.g. because it was offline), the category would correctly show up on the newly synchronized client. Even tough this worked, adding or deleting categories would not synchronize to the other clients once a message had been downloaded.
When a message got a category from a client where previous categories had not been synchronized to, the tag that is being shown in the web-ui is being overwritten with the new tag.
Here's the thing: If i take a newly received message, drag & drop it into any other folder, wait for it to synch and then move it back to the Inbox, all changes that I do to it from that moment forward, including categories are synchronized correctly to all clients.
This problem only persists with the Inbox-Folder of one user, everything else is working fine, to my knowledge.
It did look like a database error to me so I checked exchange.sqlite3 for errors in the database using sqlite3 pragma integrity_check (which yielded no errors) and gromox-mbck which found 5 errors that were fixed.
The issue with the outlook categories remain, tough.
When I log MSRPC queries (/var/gromox/http.cfg --> msrpc_debug=2) I get the following output:
Category is being given to newly received test-message, which doesn't synch to other clients
Nov 07 12:07:27 grom.myserver.net gromox-http[26551]: exmdb-audit: truncated message /var/lib/gromox/user/mydomain.org/office:f13:m198382 (rewrite)
Moving message from Inbox to temporary folder:
Nov 07 12:07:43 grom.myserver.net gromox-http[26551]: exmdb-audit: moved message /var/lib/gromox/user/mydomain.org/office:f13:m198382 to f3188076:m3397693
Moving message back from temp-folder to inbox
Nov 07 12:09:43 grom.myserver.net gromox-http[26551]: exmdb-audit: moved message /var/lib/gromox/user/mydomain.org/office:f3188076:m3397693 to f13:m3395714
Successfully applying and synchronizing the category to all clients
Nov 07 12:10:14 grom.myserver.net gromox-http[26551]: exmdb-audit: truncated message /var/lib/gromox/user/mydomain.org/office:f13:m3395714 (rewrite)
It seems to me that moving a message manually to the inbox results in another message/eid than delivery via gromox.
If anyone has some trick or insight how to solve this, that would be greatly appreciated!
EDIT:
System is Debian 12
gromox 2.35.21.fdc2573-1+5.1
mapi-header-php 1.4.0.db15bd0-1+15.1