Commit c034720d authored by Aurel's avatar Aurel

make undoLog method not fail if a SN get disconnected


git-svn-id: https://svn.erp5.org/repos/neo/branches/prototype3@586 71dcc9de-d417-0410-9af5-da40c76e7ee4
parent f35e1b61
......@@ -763,7 +763,10 @@ class Application(object):
# Wait for answers from all storages.
# FIXME this is a busy loop.
while True:
self._waitMessage(handler=self.storage_handler)
try:
self._waitMessage(handler=self.storage_handler)
except NEOStorageConnectionFailure:
continue
if len(self.local_var.node_tids.keys()) == len(storage_node_list):
break
......@@ -790,7 +793,10 @@ class Application(object):
continue
self.local_var.txn_info = 0
self._askStorage(conn, protocol.askTransactionInformation(tid))
try:
self._askStorage(conn, protocol.askTransactionInformation(tid))
except NEOStorageConnectionFailure:
continue
if self.local_var.txn_info == -1:
# TID not found, go on with next node
......@@ -798,7 +804,7 @@ class Application(object):
elif isinstance(self.local_var.txn_info, dict):
break
if self.local_var.txn_info == -1:
if self.local_var.txn_info in (-1, 0):
# TID not found at all
continue
......
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