Page MenuHomePhorge

wallace can't handle resource reservations with multiple recipients
Closed, DuplicatePublic

Description

If I create meeting with several attendees plus "resource", wallace picks up the invitation and makes a resource reservation, however no attendees receives the invitation. Messages to all the attendees, except the resource, are being eaten by wallace. Roundcube handles this situation correctly, because it sends multiple messages (invitations), other clients may send a single message with multple recipients and the result is that attendees don't receive the invitation.
The work around is to add smtp-wallace_destination_recipient_limit = 1 into /etc/postfix/main.cf file.
Illustrations:

Mar 15 00:33:31 paprika postfix/qmgr[20895]: 225591845A47: from=<bandymui@domain.lt>, size=2203, nrcpt=2 (queue active)
Mar 15 00:33:31 paprika postfix/submission/smtpd[20928]: disconnect from host.domain.lt
Mar 15 00:33:31 paprika postfix/smtp[20945]: 225591845A47: to=<liutauras@domain.lt>, relay=127.0.0.1[127.0.0.1]:10026, delay=0.41, delays=0.39/0.02/0/0, dsn=2.0.0, status=sent (250 OK Message /var/spool/pykolab/wallace/tmp7oRqQ9 queued)
Mar 15 00:33:31 paprika postfix/smtp[20945]: 225591845A47: to=<resource-car-toyota@domain.lt>, relay=127.0.0.1[127.0.0.1]:10026, delay=0.41, delays=0.39/0.02/0/0, dsn=2.0.0, status=sent (250 OK Message /var/spool/pykolab/wallace/tmp7oRqQ9 queued)
Mar 15 00:33:31 paprika postfix/qmgr[20895]: 225591845A47: removed

See that (250 OK Message /var/spool/pykolab/wallace/tmp7oRqQ9 queued) is recorded twice.
In wallace same message is processed:

2017-03-15 00:33:31,335 pykolab.wallace DEBUG [19080]: Resource Management called for ('/var/spool/pykolab/wallace/tmp7oRqQ9',), {}
2017-03-15 00:33:31,335 pykolab.wallace DEBUG [19080]: Renaming '/var/spool/pykolab/wallace/tmp7oRqQ9' to '/var/spool/pykolab/wallace/resources/incoming/tmp7oRqQ9'
....
2017-03-15 00:33:31,478 pykolab.wallace DEBUG [19080]: Checking if email address 'liutauras@domain.lt' belongs to a resource (collection)
....
2017-03-15 00:33:31,480 pykolab.wallace DEBUG [19080]: No resource (collection) records found for email 'liutauras@domain.lt'
2017-03-15 00:33:31,481 pykolab.wallace DEBUG [19080]: Checking if email address 'resource-car-toyota@domain.lt' belongs to a resource (collection)
....
2017-03-15 00:33:31,483 pykolab.wallace DEBUG [19080]: Resource record: ['cn=Toyota,ou=Resources,dc=domain,dc=lt']

In this case sender receives reservation confirmation, but attendees do not receive anything.
Making postfix split the message makes wallace create 2 messages:

Mar 15 00:58:45 paprika postfix/qmgr[30188]: EBCD91845A31: from=<bandymui@domain.lt>, size=2231, nrcpt=2 (queue active)
Mar 15 00:58:45 paprika postfix/submission/smtpd[30240]: disconnect from host.domain.lt
Mar 15 00:58:45 paprika postfix/smtp[30246]: EBCD91845A31: to=<liutauras@domain.lt>, relay=127.0.0.1[127.0.0.1]:10026, delay=1.3, delays=1.3/0.02/0/0, dsn=2.0.0, status=sent (250 OK Message /var/spool/pykolab/wallace/tmpx4QONL queued)
Mar 15 00:58:45 paprika postfix/smtp[30246]: EBCD91845A31: to=<resource-car-toyota@domain.lt>, relay=127.0.0.1[127.0.0.1]:10026, delay=1.3, delays=1.3/0.02/0.01/0, dsn=2.0.0, status=sent (250 OK Message /var/spool/pykolab/wallace/tmpQzzsM1 queued)
Mar 15 00:58:45 paprika postfix/qmgr[30188]: EBCD91845A31: removed

See tmpQzzsM1 and tmpx4QONL queued in wallace.

2017-03-15 00:58:45,389 pykolab.wallace DEBUG [25958]: No resource (collection) records found for email 'liutauras@domain.lt'
2017-03-15 00:58:45,389 pykolab.wallace DEBUG [25958]: iTips, but no resources, pass along '/var/spool/pykolab/wallace/resources/incoming/tmpx4QONL'

Notice that in previous case there was no such message as the last line in the above illustration.

2017-03-15 00:58:45,411 pykolab.wallace DEBUG [27886]: Checking if email address 'resource-car-toyota@domain.lt' belongs to a resource (collection)
2017-03-15 00:58:45,414 pykolab.wallace DEBUG [27886]: Resource record: ['cn=Toyota,ou=Resources,dc=domain,dc=lt']

Attendee receives the invitation and resource reservation is created.

pykolab-0.8.7-1.1.el7.kolab_16.noarch
wallace-0.8.7-1.1.el7.kolab_16.noarch

Details

Ticket Type
Task