Bug 324717

Summary: calendar or contacts are not seen in kontact 4.11 with a kolab3 server
Product: [Frameworks and Libraries] Akonadi Reporter: peterpaul.burger
Component: Kolab ResourceAssignee: kdepim bugs <kdepim-bugs>
Status: RESOLVED FIXED    
Severity: major CC: dvratil, kdepim-bugs, mollekopf, stephanolbrich, steve
Priority: NOR    
Version: 4.11   
Target Milestone: ---   
Platform: Kubuntu   
OS: Linux   
Latest Commit: Version Fixed In:
Sentry Crash Report:
Attachments: fix for missing inode/directory content type of collections created by kolabproxy resouce

Description peterpaul.burger 2013-09-09 20:07:47 UTC
Kontacts/calendar are stored on a kolab3 server.
After upgrade to kde 4.11 / Kontact 4.11 calendar and contacts are no longer shown in Kontact.
This happened with an Ubuntu 12.04 an 13.04 installation after using the KDE backports repository to upgrade to KDE4.11

KDE 4.10 /Kontact 4.10 as installed with fedora 19 are working as expected, same goes for an ubuntu 12.04 installation with KDE4.8/Kontact 4.8.

Reproducible: Always

Steps to Reproduce:
1. Install Ubuntu 12.04 / 13.04 (didn't try others) and kdesktop from packages as provided by ubuntu (resulting in KDE 8.x / 4.10 being installed) - do not configure Kolab imap account and calendar yet.
2. Upgrade to KDE4.11 by using  "http://ppa.launchpad.net/kubuntu-ppa/backports/ubuntu raring main" (this goes for ubuntu13.04, use respective launchpad for Ubuntu 12.04)
3. Use Kontact to configure the kolab3-imap account, then, still using the configuration interface provided by Kontact, add a kolab-calendar.
Actual Results:  
Emails stored on the kolab3 server can be accessed by imap, folders with calendar and contacts are visible an have the right property (marked as containing calendar or contacst respectively).
Neither does the calendar view show the kolab calendar nor does the contacst view show the kolab contacts.

Popupboxes containing the message "Parent collection can not contain subcollections" may appear while the imap data is synchronised.

Expected Results:  
Calendar and contacts provided by the kolab3-server should appear in the respective views of Kontact.
Kolab 3 uses subfolders for calendar and contacts of the form:

calendar-+
               +-personal calendar
contacst-+
              +-personal calendar

These folder structure is visible in Kontact calendar and contact view.

The problem was first experienced on an Ubuntu 12.04 after Upgrade to KDE 4.11 from the Kubuntu Launchpad and reproduced with fres installations of Ubuntu 12.04 and 13.04 on virtual machines.
Comment 1 Daniel Vrátil 2013-09-10 09:42:27 UTC
I can confirm - the Calendar and Contacts folders are exported via IMAP, but the Kolab Resource shows no collections in KOrganizer or KAddressbook.

After adding the Kolab resource, the debugger shows:

akonadi_kolabproxy_resource (0x19397a0) 5 BEGIN 
akonadi_kolabproxy_resource (0x19397a0) 5 OK Begin completed 
akonadi_kolabproxy_resource (0x19397a0) 6 LIST 0 INF (RESOURCE akonadi_kolabproxy_resource) (ANCESTORS 1) 
akonadi_kolabproxy_resource (0x19397a0) 6 OK List completed 
akonadi_kolabproxy_resource (0x19397a0) 7 CREATE "Kolab (Devel)" 0 ( REMOTEID "513" REMOTEREVISION "" VIRTUAL 0 ENTITYDISPLAY "(\"\" \"kolab\" \"\" ())" AccessRights "a" PARENT "0" noselect "1" CACHEPOLICY (INHERIT false INTERVAL -1 CACHETIMEOUT -1 SYNCONDEMAND false LOCALPARTS (ALL))) 
akonadi_kolabproxy_resource (0x19397a0) * 577 0 (NAME "Kolab (Devel)" MIMETYPE () REMOTEID "513" REMOTEREVISION "" RESOURCE "akonadi_kolabproxy_resource" VIRTUAL 0 CACHEPOLICY (INHERIT false INTERVAL -1 CACHETIMEOUT -1 SYNCONDEMAND false LOCALPARTS (ALL)) ENTITYDISPLAY "(\"\" \"kolab\" \"\" ())" AccessRights "a" PARENT "0" noselect "1") 
akonadi_kolabproxy_resource (0x19397a0) 7 OK CREATE completed 
akonadi_kolabproxy_resource (0x19397a0) 8 CREATE "Kolab (Kernel-ML)" 0 ( REMOTEID "539" REMOTEREVISION "" VIRTUAL 0 ENTITYDISPLAY "(\"\" \"kolab\" \"\" ())" AccessRights "a" PARENT "0" noselect "1" CACHEPOLICY (INHERIT false INTERVAL -1 CACHETIMEOUT -1 SYNCONDEMAND false LOCALPARTS (ALL))) 
akonadi_kolabproxy_resource (0x19397a0) * 578 0 (NAME "Kolab (Kernel-ML)" MIMETYPE () REMOTEID "539" REMOTEREVISION "" RESOURCE "akonadi_kolabproxy_resource" VIRTUAL 0 CACHEPOLICY (INHERIT false INTERVAL -1 CACHETIMEOUT -1 SYNCONDEMAND false LOCALPARTS (ALL)) ENTITYDISPLAY "(\"\" \"kolab\" \"\" ())" AccessRights "a" PARENT "0" noselect "1") 
akonadi_kolabproxy_resource (0x19397a0) 8 OK CREATE completed 
akonadi_kolabproxy_resource (0x19397a0) 9 CREATE "Kolab (Valhalla)" 0 ( REMOTEID "465" REMOTEREVISION "" VIRTUAL 0 ENTITYDISPLAY "(\"\" \"kolab\" \"\" ())" AccessRights "a" PARENT "0" noselect "1" CACHEPOLICY (INHERIT false INTERVAL -1 CACHETIMEOUT -1 SYNCONDEMAND false LOCALPARTS (ALL))) 
akonadi_kolabproxy_resource (0x19397a0) * 579 0 (NAME "Kolab (Valhalla)" MIMETYPE () REMOTEID "465" REMOTEREVISION "" RESOURCE "akonadi_kolabproxy_resource" VIRTUAL 0 CACHEPOLICY (INHERIT false INTERVAL -1 CACHETIMEOUT -1 SYNCONDEMAND false LOCALPARTS (ALL)) ENTITYDISPLAY "(\"\" \"kolab\" \"\" ())" AccessRights "a" PARENT "0" noselect "1") 
akonadi_kolabproxy_resource (0x19397a0) 9 OK CREATE completed 
akonadi_kolabproxy_resource (0x19397a0) 10 CREATE "Calendar" 577 (MIMETYPE (inode/directory application/x-vnd.akonadi.calendar.event) REMOTEID "516" REMOTEREVISION "" VIRTUAL 0 ENTITYDISPLAY "(\"\" \"view-calendar\" \"\" ())" uidnext "1" AccessRights "wcdCD" collectionquota "28063744 1073741824" collectionflags "\\Answered \\Flagged \\Draft \\Deleted \\Seen \\*" imapacl "XXXX@XXXXXX.com lrswipckxtdae %% " PARENT "513" uidvalidity "1378517901" collectionannotations "/vendor/cmu/cyrus-imapd/duplicatedeliver false % /vendor/cmu/cyrus-imapd/lastpop % /vendor/cmu/cyrus-imapd/partition default % /vendor/cmu/cyrus-imapd/pop3newuidl true % /vendor/cmu/cyrus-imapd/sharedseen false % /vendor/cmu/cyrus-imapd/size 0 % /vendor/kolab/folder-type event" imapquota "INBOX %%%% STORAGE % 1048576 %%%% STORAGE % 27406" highestmodseq "1" CACHEPOLICY (INHERIT true)) 
akonadi_kolabproxy_resource (0x19397a0) 10 NO Parent collection can not contain sub-collections 
akonadi_kolabproxy_resource (0x19397a0) 11 ROLLBACK 
akonadi_kolabproxy_resource (0x19397a0) 11 OK Rollback completed
Comment 2 Stephan Olbrich 2013-09-10 18:38:11 UTC
I can confirm this. Calendar and contacts from a previously configured (before 4.11) are still working, but when I add a new kolab account, the calender and contacts don't show up.
My system is a Kubuntu 13.4 and I tried it with KDE 4.11 and 4.11.1 packages.
Comment 3 Lars Altenhain 2013-09-10 20:38:35 UTC
Created attachment 82264 [details]
fix for missing inode/directory content type of collections created by kolabproxy resouce

Same here with KDE 4.11.1 packages on openSUSE 12.3. I found some hints in on of the comments of https://bugs.kde.org/show_bug.cgi?id=284527. The collection created by the kolabproxy resource is missing the inode/directory content type and this prevents the sub folder to be created. I have recompiled the kdepim4-runtime package with the attached patch and now the kolabproxy resource works again. I don't know if this is the best place to fix this but at least it works.
Comment 4 Stephan Olbrich 2013-09-13 05:21:00 UTC
The patch worked for me. Thanks!
Comment 5 Daniel Vrátil 2013-09-13 07:31:50 UTC
Christian, could you please check whether the attached patch is a correct fix for this issue?
Comment 6 peterpaul.burger 2013-09-14 10:10:44 UTC
Just managed to compile kdepim-runtime and can confirm as expected, the patch is working. Thanks a lot to all involved for the quick reaction.
Comment 7 Christian Mollekopf 2013-09-16 10:02:40 UTC
This has been fixed in afa96eb (4.11). Thanks for the report & patch.
Comment 8 Daniel Vrátil 2013-09-24 09:13:44 UTC
*** Bug 325226 has been marked as a duplicate of this bug. ***