2 commits - kolabd/__init__.py pykolab/auth pykolab/imap

Jeroen van Meeuwen vanmeeuwen at kolabsys.com
Tue Oct 15 11:15:57 CEST 2013


 kolabd/__init__.py            |    4 ++++
 pykolab/auth/ldap/__init__.py |   16 ++++++++++++++++
 pykolab/imap/cyrus.py         |   15 ++++++++++++++-
 3 files changed, 34 insertions(+), 1 deletion(-)

New commits:
commit 52fff7eda260080a9feacdcde80bc5243f922393
Author: Jeroen van Meeuwen (Kolab Systems) <vanmeeuwen at kolabsys.com>
Date:   Tue Oct 15 11:15:23 2013 +0200

    Add additional debugging that might help track down #2350

diff --git a/pykolab/auth/ldap/__init__.py b/pykolab/auth/ldap/__init__.py
index 06fb00d..6670d17 100644
--- a/pykolab/auth/ldap/__init__.py
+++ b/pykolab/auth/ldap/__init__.py
@@ -1311,6 +1311,22 @@ class LDAP(pykolab.base.Base):
 
         server = self.imap.user_mailbox_server(folder)
 
+        log.debug(
+                _("Entry %s attribute value: %r") % (
+                        mailserver_attribute,
+                        entry[mailserver_attribute]
+                    ),
+                level=8
+            )
+
+        log.debug(
+                _("imap.user_mailbox_server(%r) result: %r") % (
+                        folder,
+                        server
+                    ),
+                level=8
+            )
+
         if not entry[mailserver_attribute] == server:
             self.set_entry_attribute(entry, mailserver_attribute, server)
 
diff --git a/pykolab/imap/cyrus.py b/pykolab/imap/cyrus.py
index 6881740..9fa6feb 100644
--- a/pykolab/imap/cyrus.py
+++ b/pykolab/imap/cyrus.py
@@ -166,7 +166,20 @@ class Cyrus(cyruslib.CYRUS):
         log.debug(_("Checking actual backend server for folder %s through annotations") % (mailfolder), level=8)
 
         if self.mbox.has_key(mailfolder):
-            return self.mbox[mailfolder]
+            log.debug(
+                    _(
+                            "Possibly reproducing the find " + \
+                            "mailfolder server answer from " + \
+                            "previously detected and stored " + \
+                            "annotation value: %r"
+                        ) % (
+                                self.mbox[mailfolder]
+                            ),
+                    level=8
+                )
+
+            if not self.mbox[mailfolder] == self.server:
+                return self.mbox[mailfolder]
 
         max_tries = 20
         num_try = 0


commit e446ff782b3b815b35578eb91b692e6247e74e3f
Author: Jeroen van Meeuwen (Kolab Systems) <vanmeeuwen at kolabsys.com>
Date:   Tue Oct 15 10:11:33 2013 +0200

    terminate() processes for domains that have been removed

diff --git a/kolabd/__init__.py b/kolabd/__init__.py
index ce552d8..34e54e7 100644
--- a/kolabd/__init__.py
+++ b/kolabd/__init__.py
@@ -268,6 +268,10 @@ class KolabDaemon(object):
                 domain_auth[domain] = Process(domain)
                 domain_auth[domain].start()
 
+            for domain in removed_domains:
+                domain_auth[domain].terminate()
+                del domain_auth[domain]
+
     def reload_config(self, *args, **kw):
         pass
 




More information about the commits mailing list