[Fixed] Critical bug core-8.4.0~273: Dagent not delivering mails if plugin-manager is enabled.



  • Since core-8.4.0~273_56.1, dagent is no longer delivering mail, if plugin-manager is enabled.

    maillog:

    Apr 12 10:32:03 38162 postfix/pipe[16743]: D02725405E0: to=<hias@aegaeon.de>, relay=kopano, delay=383, delays=382/0.14/0/0.11, dsn=4.3.0, status=deferred (temporary failure)
    

    dagent.log:

    K-1732: Unable to initialize the dagent plugin manager: Unknown error code (1)
    Python error: 'module' object has no attribute 'DAgentPluginmanager'
    

    As of current, disabling the plugin-manager in dagent.cfg is a working solution.

    CentOS 6.9
    Python 2.6
    kopano-dagent 8,4,0,287

    ++umgfoin.


  • Kopano

    @umgfoin do you have any plugins enabled that could cause the failure?



  • Hi Felix,
    no, plugin-path is empty.

    plugin_manager_path = /usr/share/kopano-dagent/python
    plugin_path = /var/lib/kopano/dagent/plugins

    [tadao@ando kopano]# ls /var/lib/kopano/dagent/plugins
    insgesamt 0
    
    [tadao@ando kopano]# ls /usr/share/kopano-dagent/python/
    insgesamt 100K
    drwxr-xr-x 2 root root 4,0K 12. Apr 10:08 plugins
    -rw-r--r-- 1 root root 1,8K 12. Apr 02:58 mapiplugin.py
    -rw-r--r-- 1 root root 5,0K 12. Apr 02:58 pluginmanager.py
    -rw-r--r-- 1 root root 1,5K 12. Apr 02:58 plugintemplates.py
    -rw-r--r-- 1 root root  539 12. Apr 02:58 wraplogger.py
    -rw-r--r-- 1 root root 1,8K 12. Apr 02:58 zconfig.py
    -rw-r--r-- 1 root root 1002 12. Apr 02:58 zinterval.py
    -rw-r--r-- 1 root root 1,6K 12. Apr 02:58 zunit.py
    -rw-r--r-- 2 root root 2,7K 12. Apr 02:58 mapiplugin.pyc
    -rw-r--r-- 2 root root 4,2K 12. Apr 02:58 pluginmanager.pyc
    -rw-r--r-- 2 root root 2,8K 12. Apr 02:58 plugintemplates.pyc
    -rw-r--r-- 2 root root 1,8K 12. Apr 02:58 wraplogger.pyc
    -rw-r--r-- 2 root root 2,7K 12. Apr 02:58 zconfig.pyc
    -rw-r--r-- 2 root root 1,5K 12. Apr 02:58 zinterval.pyc
    -rw-r--r-- 2 root root 2,0K 12. Apr 02:58 zunit.pyc
    -rw-r--r-- 2 root root 2,7K 12. Apr 02:58 mapiplugin.pyo
    -rw-r--r-- 2 root root 4,2K 12. Apr 02:58 pluginmanager.pyo
    -rw-r--r-- 2 root root 2,8K 12. Apr 02:58 plugintemplates.pyo
    -rw-r--r-- 2 root root 1,8K 12. Apr 02:58 wraplogger.pyo
    -rw-r--r-- 2 root root 2,7K 12. Apr 02:58 zconfig.pyo
    -rw-r--r-- 2 root root 1,5K 12. Apr 02:58 zinterval.pyo
    -rw-r--r-- 2 root root 2,0K 12. Apr 02:58 zunit.pyo
    
    [tadao@ando kopano]# ls /usr/share/kopano-dagent/python/plugins/
    insgesamt 44K
    -rw-r--r-- 1 root root  571 12. Apr 02:58 movetopublic.cfg
    -rw-r--r-- 1 root root 4,2K 12. Apr 02:58 BMP2PNG.py
    -rw-r--r-- 1 root root 1,3K 12. Apr 02:58 examplerules.py
    -rw-r--r-- 1 root root 3,5K 12. Apr 02:58 movetopublic.py
    -rw-r--r-- 2 root root 4,0K 12. Apr 02:58 BMP2PNG.pyc
    -rw-r--r-- 2 root root 1,6K 12. Apr 02:58 examplerules.pyc
    -rw-r--r-- 2 root root 3,6K 12. Apr 02:58 movetopublic.pyc
    -rw-r--r-- 2 root root 4,0K 12. Apr 02:58 BMP2PNG.pyo
    -rw-r--r-- 2 root root 1,6K 12. Apr 02:58 examplerules.pyo
    -rw-r--r-- 2 root root 3,6K 12. Apr 02:58 movetopublic.pyo
    
    

  • Kopano

    I tried reproducing this on a CentOS 6.9 machine with 8,4,0,301 and only get:

    Thu Apr 13 03:34:30 2017: [warning] [11432] ! Plugins directory '/var/lib/kopano/dagent/plugins' doesn't exists.Plugins not loaded.
    

    After creating this folder there is no further error message in the logs (mail delivery was successful before and after). I have created https://jira.kopano.io/browse/KC-631 to fix the packages.



  • Hi Felix,
    here the problem persists (updated to 8,4,0,301): As soon as I enable plugins in dagent, mail delivery is discontinued and the following error-messages appear with every unqueue attempt from postfix.

    
    Thu Apr 13 10:11:34 2017: [ notice] [22737] LMTP service will now exit
    Thu Apr 13 10:11:34 2017: [ notice] [23798] Starting kopano-dagent LMTP mode version 8,4,0,301 (301), pid 23798
    Thu Apr 13 10:13:25 2017: [ notice] [23798] LMTP service will now exit
    Thu Apr 13 10:13:25 2017: [info   ] Maximum LMTP threads set to 20
    Thu Apr 13 10:13:25 2017: [info   ] Listening on port 2003 for LMTP
    Thu Apr 13 10:13:25 2017: [info   ] [23994] Logger process started on pid 23996
    Thu Apr 13 10:13:25 2017: [debug  ] [23994] StatsClient binding socket
    Thu Apr 13 10:13:25 2017: [debug  ] [23994] StatsClient bound socket to /tmp/.1071578776b35b1.sock
    Thu Apr 13 10:13:25 2017: [ notice] [23994] Starting kopano-dagent LMTP mode version 8,4,0,301 (301), pid 23994
    Thu Apr 13 10:13:56 2017: [24030] [error  ]   Python type: (null)
    Thu Apr 13 10:13:56 2017: [24030] [error  ]   Python error: 'module' object has no attribute 'DAgentPluginmanager'
    Thu Apr 13 10:13:56 2017: [24030] [crit   ] K-1732: Unable to initialize the dagent plugin manager: Unknown error code (1).
    Thu Apr 13 10:14:38 2017: [24084] [error  ]   Python type: (null)
    Thu Apr 13 10:14:38 2017: [24084] [error  ]   Python error: 'module' object has no attribute 'DAgentPluginmanager'
    Thu Apr 13 10:14:38 2017: [24084] [crit   ] K-1732: Unable to initialize the dagent plugin manager: Unknown error code (1).
    
    

  • Kopano

    @umgfoin did you also update python-kopano?



  • @fbartels
    yes,

    cd  core-8.4.0~301_64.1-RHEL_6_PHP_56-x86_64
    yum update *.rpm
    ...
    Untersuche python-kopano-8.4.0~301-64.1.x86_64.rpm: python-kopano-8.4.0~301-64.1.x86_64
    python-kopano-8.4.0~301-64.1.x86_64.rpm: aktualisiert installierte Pakete nicht.
    ...
    


  • @fbartels Hi Felix,

    Even after disabling dagent plugin, mails are not delivering. This is on CentOS 7.3

    Apr 18 23:45:55 kcn postfix/local[5299]: B980B60D72CF: to=, relay=local, delay=485, delays=485/0.03/0/0.06, dsn=4.3.0, status=deferred (temporary failure. Command output: [ 5300] [error  ]   Python type: (null) [ 5300] [error  ]   Python error: 'module' object has no attribute 'DAgentPluginmanager' [ 5300] [crit   ] K-1732: Unable to initialize the dagent plugin manager: Unknown error code (1). )![alt text](image url)
    
    
    [root@kcn kopano]# grep -i ^plugin_enabled dagent.cfg 
    plugin_enabled = no
    
    [root@kcn kopano]# rpm -qa | egrep -i 'kopano-server|python-kopano'
    kopano-server-8.4.0~344-71.1.x86_64
    kopano-server-packages-8.4.0~344-71.1.x86_64
    python-kopano-8.4.0~344-71.1.x86_64
    [root@kcn kopano]#

  • Kopano

    Since I had a Centos 7 machine up to test something else, I decided to give this another try. But still no luck in reproducing this.

    Kopano Core 8,4,0,344
    CentOS Linux release 7.3.1611 (Core)



  • @fbartels

    • I followed the installation procedure from here
    • Its the exact same version of CentOS Linux release 7.3.1611 (Core)
    • postfix config are basic.


  • Hi @fbartels ,

    I was using below settings in main.cf which was the issue. I commented it out

    mail_command = /usr/sbin/kopano-dagent "$USER" 
    

    Instead I started using below and it worked.

    mailbox_transport = lmtp:127.0.0.1:2003
    

  • Kopano

    Ok, thanks to your additional information I was finally able to reproduce this issue and it seems to indeed only happen, when delivering via pipe. I have created https://jira.kopano.io/browse/KC-642 to followup on this issue.


  • Translator



  • @fbartels
    Great, you discovered that!
    Just changed my postfix-config from PIPE to LMTP transport and can confirm your findings for Centos 6.9/ Python 2.7:
    No dagent-plugin problem with LMTP transport - the issue seems to concern piped connections, only.
    ++umgfoin.



  • …fixed with commit c699e000835 .

    Thanks,
    ++umgfoin.



Looks like your connection to Kopano Community Forum was lost, please wait while we try to reconnect.