--- a/server/session.py Tue Jun 25 17:25:47 2013 +0200
+++ b/server/session.py Tue Jun 25 11:06:57 2013 +0200
@@ -935,6 +935,14 @@
self.set_cnx()
return self.__threaddata.cnx
+ @property
+ def _current_cnx_id(self):
+ """TRANSITIONAL PURPOSE"""
+ try:
+ return self.__threaddata.cnx.transactionid
+ except AttributeError:
+ return None
+
def get_option_value(self, option, foreid=None):
return self.repo.get_option_value(option, foreid)
@@ -1212,6 +1220,14 @@
rset.req = self
return rset
+ def close_cnx(self, cnxid):
+ cnx = self._cnxs.get(cnxid, None)
+ if cnx is not None:
+ cnx.free_cnxset(ignoremode=True)
+ self._clear_thread_storage(cnx)
+ self._clear_cnx_storage(cnx)
+
+
def _clear_thread_data(self, free_cnxset=True):
"""remove everything from the thread local storage, except connections set
which is explicitly removed by free_cnxset, and mode which is set anyway