提交 0a7c60f1 authored 作者: Ricardo Vieira's avatar Ricardo Vieira 提交者: Ricardo Vieira

Lazy pdb import

上级 8c276acb
...@@ -5,7 +5,6 @@ import copy ...@@ -5,7 +5,6 @@ import copy
import functools import functools
import inspect import inspect
import logging import logging
import pdb
import sys import sys
import time import time
import traceback import traceback
...@@ -237,6 +236,8 @@ class SequentialGraphRewriter(GraphRewriter, UserList): ...@@ -237,6 +236,8 @@ class SequentialGraphRewriter(GraphRewriter, UserList):
if config.on_opt_error == "raise": if config.on_opt_error == "raise":
raise exc raise exc
elif config.on_opt_error == "pdb": elif config.on_opt_error == "pdb":
import pdb
pdb.post_mortem(sys.exc_info()[2]) pdb.post_mortem(sys.exc_info()[2])
def __init__(self, *rewrites, failure_callback=None): def __init__(self, *rewrites, failure_callback=None):
...@@ -1752,6 +1753,8 @@ class NodeProcessingGraphRewriter(GraphRewriter): ...@@ -1752,6 +1753,8 @@ class NodeProcessingGraphRewriter(GraphRewriter):
_logger.error("TRACEBACK:") _logger.error("TRACEBACK:")
_logger.error(traceback.format_exc()) _logger.error(traceback.format_exc())
if config.on_opt_error == "pdb": if config.on_opt_error == "pdb":
import pdb
pdb.post_mortem(sys.exc_info()[2]) pdb.post_mortem(sys.exc_info()[2])
elif isinstance(exc, AssertionError) or config.on_opt_error == "raise": elif isinstance(exc, AssertionError) or config.on_opt_error == "raise":
# We always crash on AssertionError because something may be # We always crash on AssertionError because something may be
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论