Skip to content

Commit 89bc444

Browse files
committed
remote/coordinator: warn for replies to commands that have already expired
Event if the caller has given up on this command, we should at least report if we receive a reply later. Signed-off-by: Jan Luebbe <[email protected]>
1 parent 8cb8ecd commit 89bc444

File tree

1 file changed

+10
-1
lines changed

1 file changed

+10
-1
lines changed

labgrid/remote/coordinator.py

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -169,13 +169,22 @@ def __init__(self, request) -> None:
169169
self.request = request
170170
self.response = None
171171
self.completed = asyncio.Event()
172+
self.expired = False
172173

173174
def complete(self, response) -> None:
174175
self.response = response
175176
self.completed.set()
177+
if self.expired:
178+
logging.warning(
179+
"exporter command already expired for request %s -> response %s", self.request, self.response
180+
)
176181

177182
async def wait(self):
178-
await asyncio.wait_for(self.completed.wait(), 10)
183+
try:
184+
await asyncio.wait_for(self.completed.wait(), 10)
185+
finally:
186+
if self.response is None:
187+
self.expired = True
179188

180189

181190
class ExporterError(Exception):

0 commit comments

Comments
 (0)