Strengthened stability by introducing TimeoutError handling
This commit is contained in:
+43
-15
@@ -31,33 +31,61 @@ def executeRequest(action, outputs, resolved):
|
|||||||
f"{threading.current_thread().name} thread"
|
f"{threading.current_thread().name} thread"
|
||||||
)
|
)
|
||||||
|
|
||||||
try:
|
for attempt in range(2):
|
||||||
request, outputs = buildRequest(action, outputs, resolved)
|
request, outputs = buildRequest(action, outputs, resolved)
|
||||||
|
try:
|
||||||
response = session.request(
|
response = session.request(
|
||||||
method=request["method"],
|
method=request["method"],
|
||||||
url=request["path"],
|
url=request["path"],
|
||||||
json=request.get("object"),
|
json=request.get("object"),
|
||||||
headers=request.get("headers"),
|
headers=request.get("headers"),
|
||||||
data=request.get("data"),
|
data=request.get("data"),
|
||||||
files=request.get("files")
|
files=request.get("files"),
|
||||||
|
timeout=(10, 30)
|
||||||
)
|
)
|
||||||
|
return response, outputs
|
||||||
|
|
||||||
except requests.ConnectionError as error:
|
except (requests.ConnectTimeout, requests.ConnectionError) as error:
|
||||||
print(f"Request failed due to {error} during {action.name}")
|
print(f"{type(error).__name__} during {action.name}: {error}")
|
||||||
|
|
||||||
session = getSession(reset=True)
|
session = getSession(reset=True)
|
||||||
|
|
||||||
|
if attempt == 0:
|
||||||
print(f"Retrying {action.name}")
|
print(f"Retrying {action.name}")
|
||||||
|
|
||||||
response = session.request(
|
# try:
|
||||||
method=request["method"],
|
# request, outputs = buildRequest(action, outputs, resolved)
|
||||||
url=request["path"],
|
#
|
||||||
json=request.get("object"),
|
# response = session.request(
|
||||||
headers=request.get("headers"),
|
# method=request["method"],
|
||||||
data=request.get("data")
|
# url=request["path"],
|
||||||
)
|
# json=request.get("object"),
|
||||||
|
# headers=request.get("headers"),
|
||||||
return response, outputs
|
# data=request.get("data"),
|
||||||
|
# files=request.get("files"),
|
||||||
|
# timeout=(10, 30)
|
||||||
|
# )
|
||||||
|
#
|
||||||
|
# except requests.ConnectionError as error:
|
||||||
|
# print(f"Request failed due to {error} during {action.name}")
|
||||||
|
#
|
||||||
|
# session = getSession(reset=True)
|
||||||
|
#
|
||||||
|
# print(f"Retrying {action.name}")
|
||||||
|
#
|
||||||
|
# response = session.request(
|
||||||
|
# method=request["method"],
|
||||||
|
# url=request["path"],
|
||||||
|
# json=request.get("object"),
|
||||||
|
# headers=request.get("headers"),
|
||||||
|
# data=request.get("data"),
|
||||||
|
# files=request.get("files"),
|
||||||
|
# timeout=(10, 30)
|
||||||
|
# )
|
||||||
|
#
|
||||||
|
# return response, outputs
|
||||||
|
#
|
||||||
|
# except requests.Timeout as error:
|
||||||
|
# print(f"Request timed out during {action.name}: {error}")
|
||||||
|
# session = getSession(reset=True)
|
||||||
|
|
||||||
return response, outputs
|
return response, outputs
|
||||||
|
|||||||
Reference in New Issue
Block a user