server/repository.py
branchstable
changeset 7064 b8ce2266d026
parent 6889 37668bf302f5
child 7068 90ddf608fe2b
child 7083 b8e35cde46e9
--- a/server/repository.py	Wed Mar 09 12:24:50 2011 +0100
+++ b/server/repository.py	Wed Mar 09 13:42:55 2011 +0100
@@ -543,7 +543,13 @@
             return self.config[option]
         pool = self._get_pool()
         try:
-            return pool.connection(sourceuri).get_option_value(option, extid)
+            cnx = pool.connection(sourceuri)
+            # needed to check connection is valid and usable by the current
+            # thread
+            newcnx = self.sources_by_uri[sourceuri].check_connection(cnx)
+            if newcnx is not None:
+                cnx = newcnx
+            return cnx.get_option_value(option, extid)
         finally:
             self._free_pool(pool)