aboutsummaryrefslogtreecommitdiffstats
path: root/po/nds.po
diff options
context:
space:
mode:
authorBryn M. Reeves <bmr@redhat.com>2018-09-07 12:15:10 -0400
committerBryn M. Reeves <bmr@redhat.com>2018-09-10 15:43:53 +0100
commit9aaba972bf6a42c33ea9bca80f07bfb880ba45a1 (patch)
tree3de02015473f235ce671a979222d50c355bdbaa9 /po/nds.po
parent5d6228b85e174dee8abcc4c206a1e9034242c6c6 (diff)
downloadsos-9aaba972bf6a42c33ea9bca80f07bfb880ba45a1.tar.gz
[sosreport] trap directly to PDB in handle_exception()
Now that plugins are run in a threadpool, it is not possible to defer the call to pdb.post_mortem() to the top-level exception handler in the main thread: this is due to the fact that in a pool, exceptions are caught and saved to be re-raised to thread calling the pool when results are returned. When the saved exception is raised to the top-level handler the execution context it relates to is gone: the backtrace and stack frame have been torn down and only very limited information is available from the exception frame. Instead, catch these exceptions _inside_ the thread pool context, and directly trap to the Python debugger. This allows plugin code to be debugged interactively with the full backtrace and with all access to local variables and the execution stack. In addition, this means that after the debugger has handled the exception it is possible to return to the run and continue until report completion. One side effect of this change is that the *-plugin-errors.txt file containng the backtrace is now written into the archive whether or not --debug is given. Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
Diffstat (limited to 'po/nds.po')
0 files changed, 0 insertions, 0 deletions