Commit 9a56771d authored by Jim Fulton's avatar Jim Fulton

Protected the connection table with a lock.

parent 69beac1d
...@@ -85,15 +85,16 @@ ...@@ -85,15 +85,16 @@
database_type='Gadfly' database_type='Gadfly'
__doc__='''%s Database Connection __doc__='''%s Database Connection
$Id: DA.py,v 1.7 1999/03/10 00:15:29 klm Exp $''' % database_type $Id: DA.py,v 1.8 1999/07/22 16:10:04 jim Exp $''' % database_type
__version__='$Revision: 1.7 $'[11:-2] __version__='$Revision: 1.8 $'[11:-2]
from db import DB, manage_DataSources from db import DB, manage_DataSources
import sys, DABase, Globals import sys, DABase, Globals
import Shared.DC.ZRDB.Connection import Shared.DC.ZRDB.Connection, ThreadLock
_Connection=Shared.DC.ZRDB.Connection.Connection _Connection=Shared.DC.ZRDB.Connection.Connection
_connections={} _connections={}
_connections_lock=ThreadLock.allocate_lock()
data_sources=manage_DataSources data_sources=manage_DataSources
...@@ -140,6 +141,8 @@ class Connection(DABase.Connection): ...@@ -140,6 +141,8 @@ class Connection(DABase.Connection):
return s return s
def connect(self,s): def connect(self,s):
_connections_lock.acquire()
try:
c=_connections c=_connections
if c.has_key(s): if c.has_key(s):
c=self._v_database_connection=c[s] c=self._v_database_connection=c[s]
...@@ -159,4 +162,6 @@ class Connection(DABase.Connection): ...@@ -159,4 +162,6 @@ class Connection(DABase.Connection):
finally: tb=None finally: tb=None
return self return self
finally:
_connections_lock.release()
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment