Log CellTimeout traceback in scatter_gather_cells

When a call to a cell in scatter_gather_cells times out
we log a warning and set the did_not_respond_sentinel for
that cell but it would be useful if we logged the traceback
with the warning for debugging where the call is happening.

Change-Id: I8f4069474a3955eea6c967d3090f2960e739224c
Related-Bug: #1844929
This commit is contained in:
Matt Riedemann 2019-09-23 14:57:44 -04:00
parent 597b34cd87
commit 0436a95f37
1 changed files with 2 additions and 3 deletions

View File

@ -445,15 +445,14 @@ def scatter_gather_cells(context, cell_mappings, timeout, fn, *args, **kwargs):
except exception.CellTimeout:
# NOTE(melwitt): We'll fill in did_not_respond_sentinels at the
# same time we kill/wait for the green threads.
pass
LOG.warning('Timed out waiting for response from cell %s',
cell_uuid, exc_info=True)
# Kill the green threads still pending and wait on those we know are done.
for cell_uuid, greenthread in greenthreads:
if cell_uuid not in results:
greenthread.kill()
results[cell_uuid] = did_not_respond_sentinel
LOG.warning('Timed out waiting for response from cell %s',
cell_uuid)
else:
greenthread.wait()