[Kolab-devel] Kolab 3.3 feedback

Daniel Hoffend dh at dotlan.net
Wed Aug 13 14:31:04 CEST 2014


this is a follow up on my initial test run of Kolab 3.3. Last 
evening/night I started to reinstall my testsystem again and tried to 
configure and test a few things that were announced as the big new 
features of Kolab 3.3. Well ... apart from stuff that is not enabled by 
default or parameter that haven't been configured I came a cross lots of 
default configuration, packaging or other bugs.

Since up until now I couldn't report most of them as bugs in bugzilla or 
even fix them in OBS so here's my long list of notes. Maybe I just don't 
know how to configure things the right way but some stuff is a bit 

Some the bugs have already been opened as ticket but I'll list them 
(again) just to have a full list of stuff that I came across. Oh and I 
still have the opinion that features the system provides should be 
enabled by default (wallace for resource management, kolab_tags, etc). 
People still can disable them if they don't need them but they start to 
wonder if there's a function (like resource booking) that is enabled by 
default in roundcube but won't work until actually include wallace in 
the mail flow.

If I find the time I'll open bug if that's speeds up the error finding 

Best Regards



## debian package bug

missing public_html folder
FIXED: Already fixed at the time when I finished my notes


## incompatible

The contextenu 1.x won't work with roundcube 1.1 but 2.x has problems 
that needs to be resolved in the upstream package first before packaging
Ticket: https://issues.kolab.org/show_bug.cgi?id=3266


## error message during first setup-kolab (on debian)

2014-08-13 10:46:46,371 pykolab.conf ERROR Could not change permissions 
on /var/log/kolab/pykolab.log: OSError(2, 'No such file or directory')
old bug but still present: https://issues.kolab.org/show_bug.cgi?id=2798

## ldap/folderacl_entry_attribute

The new config parameter used for ACL management of shared folders is 
missing the example kolab.conf, the setup-kolab generated kolab.conf and 
has no default value in case it's not configured

2014-08-13 11:55:25,835 pykolab.conf WARNING Option 
ldap/folderacl_entry_attribute does not exist in config file 
/etc/kolab/kolab.conf, pulling from defaults
2014-08-13 11:55:25,836 pykolab.conf WARNING Option does not exist in 

Workaround: kolab.conf: ldap/folderacl_entry_attribute = acl + 
kolab-server restart

## error when creating a new shared folder

2014-08-13 11:57:22,253 pykolab.auth ERROR An error occured using 
_paged_search: CYRUSError(99, 'SETACL', 'Mailbox does not exist')

$ kolab sync -d 9 2>&1 | grep ^.SET
[SETANNOTATION shared/GroupCal at dotlan.info] OK: None
[SETACL GroupCal at dotlan.info daniel.hoffend at dotlan.info lrswipkxtecdn] 
BAD: Mailbox does not exist

sounds like a missing "shared/" prefix in the folder name when trying to 
set acl.

## invalid default imap uri

default cyrus-imap/uri in kolab.conf points to imaps://localhost:993 
even imaps is not configured in the vanilla installation resulting in 
kolab-freebusy not working until this has changed or ssl is configured


## Problem with metadata/folders

Ticket: https://issues.kolab.org/show_bug.cgi?id=3253
Workaround: echo "suppress_capabilities: METADATA" >> /etc/imapd.conf + 

But this should be fixed in the upsteam package first I guess.


## wallace not activated by default

wallace deamons are running but are not configured to be used in the 
vanilla default installation

workaround: /etc/postfix/master.conf [...]
     -o content_filter=smtp-wallace:[]:10026


## Summary

* booking of single resources == FAIL (NDR)
* booking of resource collection == SUCCESS
* booking of resource collection at the same time == ERROR

## booking single resource

1) enable wallace via postfix master.conf
2) create resource beamer1
3) create appointment + book resource beamer1 + save

I receive a non-delivery-notification even the mail is getting processed 
by wallace and the mailbox in general should exist
# kolab lm | grep beamer1
shared/Resources/beamer1 at dotlan.info

Aug 13 13:08:32 kolab33 postfix/smtp[26293]: 0212E23157: 
to=<shared+shared/Resources/beamer1 at dotlan.info>, 
relay=[]:10026, delay=0.05, delays=0.04/0.01/0/0, 
dsn=2.0.0, status=sent (250 Ok)
Aug 13 13:08:32 kolab33 postfix/qmgr[26270]: 0212E23157: removed
Aug 13 13:08:32 kolab33 postfix/smtpd[26294]: connect from 
Aug 13 13:08:32 kolab33 postfix/smtpd[26294]: 2D16223157: 
Aug 13 13:08:32 kolab33 postfix/cleanup[26292]: 2D16223157: 
message-id=<fe3adf70bc9ad44e1cc76f3b69c0089d at dotlan.info>
Aug 13 13:08:32 kolab33 postfix/qmgr[26270]: 2D16223157: 
from=<daniel.hoffend at dotlan.info>, size=2225, nrcpt=1 (queue active)
Aug 13 13:08:32 kolab33 postfix/smtpd[26294]: disconnect from 
Aug 13 13:08:32 kolab33 postfix/lmtp[26295]: 2D16223157: 
to=<shared+shared/Resources/beamer1 at dotlan.info>, 
relay=kolab33.dotlan.info[/var/lib/imap/socket/lmtp], delay=0.06, 
delays=0.03/0.01/0/0.01, dsn=5.1.1, status=bounced (host 
kolab33.dotlan.info[/var/lib/imap/socket/lmtp] said: 550-Mailbox 
unknown.  Either there is no mailbox associated with this 550-name or 
you do not have authorization to see it. 550 5.1.1 User unknown (in 
reply to RCPT TO command))
Aug 13 13:08:32 kolab33 postfix/cleanup[26299]: 39BD223176: 
message-id=<20140813110832.39BD223176 at kolab33.dotlan.info>
Aug 13 13:08:32 kolab33 postfix/bounce[26297]: 2D16223157: sender 
non-delivery notification: 39BD223176

## booking resource collection

1) create resource collection beamers + add beamer1
2) create appointment + book resource collection beamers + save

* from: beamers - Reservation Request for test1 was Delegated
* from: beamer1 - Reservation Request for test1 was Accepted

3) create appointment different date/time + book resource collection 
beamers + save

Note: You don't see the freebusys calendar of the resources. it's 
completely empty


4) create appointment same date/time + book resource collection beamers 
+ save

2014-08-13 13:28:04,387 pykolab.wallace ERROR Module resources.execute() 
failed on message '/var/spool/pykolab/wallace/tmp5yiKgw' with error: 
Traceback (most recent call last):
   File "/usr/lib/python2.7/dist-packages/wallace/__init__.py", line 67, 
in pickup_message
     result_filepath = modules.execute(module, filepath)
   File "/usr/lib/python2.7/dist-packages/wallace/modules.py", line 116, 
in execute
     return modules[name]['function'](*args, **kw)
   File "/usr/lib/python2.7/dist-packages/wallace/module_resources.py", 
line 336, in execute
     (available_resource, itip_event) = check_availability(itip_events, 
resource_dns, resources, receiving_attendee)
   File "/usr/lib/python2.7/dist-packages/wallace/module_resources.py", 
line 482, in check_availability
     if done:
UnboundLocalError: local variable 'done' referenced before assignment

the incoming file is laying in the spool file and is blocking all other 
incoming wallace resource requests until I empty the spool folder

5) rm /var/spool/pykolab/wallace/resources/incoming/* + restart wallace

## other tracebacks

here's another traceback that I've seen when I tried to clean up the 

2014-08-13 13:29:34,984 pykolab.wallace ERROR Module resources.execute() 
failed on message 
'/var/spool/pykolab/wallace/resources/incoming/tmpRtIZs8' with error: 
Traceback (most recent call last):
   File "/usr/lib/python2.7/dist-packages/wallace/__init__.py", line 67, 
in pickup_message
     result_filepath = modules.execute(module, filepath)
   File "/usr/lib/python2.7/dist-packages/wallace/modules.py", line 116, 
in execute
     return modules[name]['function'](*args, **kw)
   File "/usr/lib/python2.7/dist-packages/wallace/module_resources.py", 
line 325, in execute
     delete_resource_event(itip_event['uid'], resources[resource])
   File "/usr/lib/python2.7/dist-packages/wallace/module_resources.py", 
line 705, in delete_resource_event
     targetfolder = imap.folder_quote(resource['kolabtargetfolder'])
KeyError: 'kolabtargetfolder'


I kinda feel helpless with correct way on how to configure freebusy and 
make it work

## debian package bug

* missing folder /var/{lib,cache}/kolab-freebusy
   workaround: mkdir -p /var/{cache,lib}/kolab-freebusy ; chown 
kolab:kolab /var/{cache,lib}/kolab-freebusy

## config.ini.sample

* logfolder should be ./logs not ./log
* rename kolab-ldap to kolab-users
* add kolab-resources
* comment out exchange (leave it as example only)
* default imap connection points to imaps but ssl is not configured in 
the default installation
' filter @yourdomain not replaced by the default domain during 

## strange search / database error

with debug level = 100

==> /var/log/kolab-freebusy/freebusy.log <==
[2014-08-13 13:44:50] web.DEBUG: Trying directory kolab-users ....
[2014-08-13 13:44:50] ldap.INFO: Found 1 entries for 
(&(objectClass=kolabInetOrgPerson)(|(uid=daniel.hoffend at dotlan.info)(mail=daniel.hoffend at dotlan.info)(alias=daniel.hoffend at dotlan.info))) 
{"mail":["daniel.hoffend at dotlan.info"]} []
==> /var/log/kolab-freebusy/errors <==
[13-Aug-2014 13:44:50 +0200]: DB Error: Configuration error. Unsupported 
database driver:  in 
/usr/share/kolab-freebusy/lib/Roundcube/rcube_db.php on line 78 (GET 
/freebusy/daniel.hoffend at dotlan.info)

## lib vs cache confusion?

$ kolab-freebusyd --generateall 2>&1 | grep wrote
(11:43:50) fbaggregatorjob.cpp(103):    wrote  
"/var/lib/kolab-freebusy/daniel.hoffend at dotlan.info.ifb"

root at kolab33:/var/log/kolab-freebusy# egrep -i "^(cache|fb)" 
fbsource = file:/var/lib/kolab-freebusy/%s.ifb
fbsource = file:/var/cache/kolab-freebusy/%s.ifb
fbsource = 
cacheto = /var/cache/kolab-freebusy/%mail.ifb
fbsource = imap://%mail:xxxxx@localhost:143/?proxy_auth=cyrus-admin
cacheto = /var/cache/kolab-freebusy/%mail.ifb

## cron

* is it usefull or should freebusy always be generated on demand
* missing cron job to actually generate the freebusy files
* not really clear if we should configre nothing (on demand) or via cron 
or via fbdaemon (sample file) which seems to be on the TODO list

*/15 * * * * root [ $(pgrep kolab-freebusyd >/dev/null 2>&1; echo $?) 
-ne 0 ] && QT_NO_GLIB=1 kolab-freebusyd --generateall 
 >/var/log/kolab-freebusyd.log 2>&1

## resources

empty FB for resource collecion. this might be okay

[2014-08-13 13:52:21] ldap.INFO: No entry found for 
(&(objectClass=kolabInetOrgPerson)(|(uid=resource-collection-beamers at dotlan.info)(mail=resource-collection-beamers at dotlan.info)(alias=resource-collection-beamers at dotlan.info))) 
[] []
[2014-08-13 13:52:21] web.INFO: Returning empty Free/Busy list for user 
resource-collection-beamers at dotlan.info [] []

trying to show the specific freebusy times of a single resource ==> 
Search OK, but FAILED

[2014-08-13 13:53:51] ldap.INFO: Found 1 entries for 
(&(objectClass=kolabsharedfolder)(mail=resource-beamer-beamer1 at dotlan.info)) 
{"mail":["resource-beamer-beamer1 at dotlan.info"],"kolabtargetfolder":["shared/Resources/beamer1 at dotlan.info"]} 
[13-Aug-2014 13:53:51 +0200]: DB Error: Configuration error. Unsupported 
database driver:  in 
/usr/share/kolab-freebusy/lib/Roundcube/rcube_db.php on line 78 (GET 
/freebusy/resource-beamer-beamer1 at dotlan.info.ifb)

kolab-syncroton + others

## Mixed table characterset in mysql.initial.sql files

reported already in my previous mail:


## missing + button

while plugins like addressbook have a [+] button bottom toolbar, the 
notes plugin does not

## locales

A few german locales are missing. I know it's time to register at 
transoflex or whatever it is called :-)


Even announced as new feature for the roundcube mail clients, it's not 
enabed by default.

More information about the devel mailing list