1

Topic: Error updating from 0.8.4 to 0.8.5

==== Required information ====
- iRedMail version:
- Store mail accounts in which backend (LDAP/MySQL/PGSQL):
- Linux/BSD distribution name and version:
- Related log if you're reporting an issue:
======== Required information ====
- iRedMail version: 0.8.5
- Store mail accounts in which backend (LDAP/MySQL/PGSQL): LDAP
- Linux/BSD distribution name and version: Centos 6.4
- Related log if you're reporting an issue:
====

Hi,

I am trying to update from 0.8.4 to 0.8.5 following the instructions in http://iredmail.org/wiki/index.php?titl … .8.4-0.8.5

When I test the upgrade I see the following error in maillog:

Jul 16 11:24:01 correo2 postfix/smtpd[26186]: connect from localhost[127.0.0.1]
Jul 16 11:24:01 correo2 postfix/smtpd[26186]: EC80E40E03: client=localhost[127.0.0.1], sasl_method=LOGIN, sasl_username=xxxx@xxx.com
Jul 16 11:24:02 correo2 postfix/cleanup[26131]: EC80E40E03: message-id=<e6a0b2d96d580ec26657e9d95e6b6c6a@bancofar.es>
Jul 16 11:24:02 correo2 postfix/qmgr[26125]: EC80E40E03: from=<xxxx@xxx.com>, size=452, nrcpt=1 (queue active)
Jul 16 11:24:02 correo2 roundcube: User xxxx@xxx.com [192.168.2.53]; Message for yyyy@yyy.com; 250: 2.0.0 Ok: queued as EC80E40E03
Jul 16 11:24:02 correo2 amavis[25787]: (25787-02) (!)lookup_ldap: do_search: failed: LDAP_OPERATIONS_ERROR
Jul 16 11:24:02 correo2 amavis[25787]: (25787-02) (!!)TROUBLE in process_request: do_search: failed: LDAP_OPERATIONS_ERROR at (eval 102) line 457, <GEN21> line 49.
Jul 16 11:24:02 correo2 amavis[25787]: (25787-02) (!)Requesting process rundown after fatal error
Jul 16 11:24:02 correo2 postfix/smtp[26127]: EC80E40E03: to=<yyyy@yyy.com>, relay=127.0.0.1[127.0.0.1]:10024, delay=0.06, delays=0.05/0/0/0.01, dsn=4.3.2, status=deferred (host 127.0.0.1[127.0.0.1] said: 421 4.3.2 Service shutting down, closing channel (in reply to MAIL FROM command))
Jul 16 11:24:02 correo2 postfix/smtpd[26186]: disconnect from localhost[127.0.0.1]



The update wiki says:

Open Postfix ldap lookup file /etc/postfix/ldap/virtual_group_maps.cf' (or /usr/local/etc/postfix/ldap/virtual_group_maps.cf on FreeBSD), update the value of query_filter parameter to add addition LDAP objectclasses:
File: /etc/postfix/ldap/virtual_group_maps.cf
# OLD SETTING
#query_filter    = (&(accountStatus=active)(enabledService=mail)(enabledService=deliver)(|(memberOfGroup=%s)(shadowAddress=%s))(|(objectClass=mailUser)(objectClass=mailExternalUser)))

# NEW SETTING
query_filter    = (&(accountStatus=active)(enabledService=mail)(enabledService=deliver)(|(&(|(memberOfGroup=%s)(shadowAddress=%s))(objectClass=mailUser))(&(memberOfGroup=%s)(!(shadowAddress=%s))(|(objectClass=mailExternalUser)(objectClass=mailList)(objectClass=mailAlias)))))

If I revert the file /etc/postfix/ldap/virtual_group_maps.cf to the query_filter old setting all work as intended.
Maybe the query_filter new setting is wrong?

Thank you.

2

Re: Error updating from 0.8.4 to 0.8.5

Did you try to restart OpenLDAP service?

3

Re: Error updating from 0.8.4 to 0.8.5

ZhangHuangbin wrote:

Did you try to restart OpenLDAP service?

Yes, several times. Both ldap and postfix

4

Re: Error updating from 0.8.4 to 0.8.5

jsegura wrote:
ZhangHuangbin wrote:

Did you try to restart OpenLDAP service?

Yes, several times. Both ldap and postfix

It is solved now. I have restarted amavisd service and all it is ok.

Thank you.

5 (edited by Clouseau 2013-12-23 23:57:33)

Re: Error updating from 0.8.4 to 0.8.5

Sorry for raising the thread, but I can see when I restart openldap service, amavis starts to wright this to mail.log:

... amavis[14541]: (14541-03) (!)lookup_ldap: do_search: failed: LDAP_OPERATIONS_ERROR
... amavis[14541]: (14541-03) (!!)TROUBLE in process_request: do_search: failed: LDAP_OPERATIONS_ERROR at (eval 113) line 532, <GEN37> line 3786.
... amavis[14541]: (14541-03) (!)Requesting process rundown after fatal error

After that I have to restart amavis to fix it. What could be the cause of it, can you help?

Also, can you tell me why amavis needs ldap, what does it query ldap?

Tnx smile

6

Re: Error updating from 0.8.4 to 0.8.5

*) It's not clear what the problem is in log. Sorry, no idea yet.
*) Amavisd will query LDAP for some per-user settings. You can disable it if you want.

7

Re: Error updating from 0.8.4 to 0.8.5

Line 3786 says something about parent process. Maybe restarting ldap kills parent process so amavis cant pipe back to it and complains about it...

3783       # write results back to a parent process over a pipe as a frozen struct.
   3784       # writing to broken pipe must return an error, not throw a signal
   3785       local $SIG{PIPE} = sub { die "Broken pipe\n" };  # locale-independent err
   3786       $child_out_fh->print($frozen) or die "Can't write result to pipe: $!";
   3787       $child_out_fh->close or die "Child can't close its side of a pipe: $!";
   3788       close STDOUT or die "Child can't close its STDOUT: $!";
   3789       POSIX::_exit(0); # normal completion, avoid END and destructor processing