Commit ad30ddbc authored by Jeremy Hylton's avatar Jeremy Hylton

Fix checkReconnection().

If an exception is raised, make sure the current transaction is
aborted.  And catch more of the oddball exceptions that can get raised
when a server disconnects -- like thread.error.
parent 60719eeb
......@@ -12,6 +12,7 @@ import unittest
import ZEO.ClientStorage, ZEO.StorageServer
import ThreadedAsync, ZEO.trigger
from ZODB.FileStorage import FileStorage
import thread
from ZEO.tests import forker, Cache
from ZEO.smac import Disconnected
......@@ -277,7 +278,8 @@ class ConnectionTests(ZEOTestBase):
while 1:
try:
revid1 = self._dostore(oid, data=obj)
except ClientDisconnected:
except (ClientDisconnected, thread.error), err:
get_transaction().abort()
time.sleep(0.1)
else:
break
......
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