state held between runs in a running pydb session causes apparent infinite loop

Bug #1634957 reported by themusicgod1
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
pydb (Ubuntu)
New
Undecided
Unassigned

Bug Description

to reproduce
1) Attempt to debug a mnemosyne session.
2) Run into an uncaught exception in mnemosyne (eg caused by this patch https://bugs.launchpad.net/debian/+source/mnemosyne/+bug/1633725/comments/8 )
3) rerun by 'run' in pydb session
4) continue by 'c' in pydb session

pydb's CPU goes to 100% and appears to stay there. Attempts to debug lead to control in the pydb being within
QGuiApplication::font() () from /usr/lib/x86_64-linux-gnu/libQt5Gui.so.5

#0 signal_handler.lto_priv.1439 (sig_num=11) at ../Modules/signalmodule.c:185
#1 <signal handler called>
#2 0x00007f0b09ac605f in QGuiApplication::font() () from /usr/lib/x86_64-linux-gnu/libQt5Gui.so.5
#3 0x00007f0b09b76e51 in QFont::QFont() () from /usr/lib/x86_64-linux-gnu/libQt5Gui.so.5
#4 0x00007f0b0a0e2760 in QWidgetPrivate::QWidgetPrivate(int) () from /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5
#5 0x00007f0b0a214010 in QMainWindow::QMainWindow(QWidget*, QFlags<Qt::WindowType>) () from /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5
#6 0x00007f0b0a7a6609 in sipQMainWindow::sipQMainWindow (this=0x55c3c03639b0, a0=<optimized out>, a1=...) at ./build-2.7/QtWidgets/sipQtWidgetspart4.cpp:37113
#7 0x00007f0b0a7a671d in init_type_QMainWindow (sipSelf=0x7f0acf498c30, sipArgs=<optimized out>, sipKwds=<optimized out>, sipUnused=<optimized out>, sipOwner=<optimized out>, sipParseErr=<optimized out>) at ./build-2.7/QtWidgets/sipQtWidgetspart4.cpp:39482
#8 0x00007f0b02a416fb in sipSimpleWrapper_init (self=self@entry=0x7f0acf498c30, args=(), kwds=0x0) at siplib.c:9861
#9 0x000055c3bf693975 in wrap_init.lto_priv.1154 (kwds=<optimized out>, wrapped=0x7f0b02a41420 <sipSimpleWrapper_init>, args=<optimized out>, self=<MainWdgt(component_manager=<ComponentManager(render_chain_by_id={'default': <DefaultRenderChain(_filters=[<Latex(component_manager=<...>) at remote 0x7f0acf1a6b10>, <EscapeToHtml(component_manager=<...>) at remote 0x7f0acf1a6b50>, <ExpandPaths(component_manager=<...>) at remote 0x7f0acf1a6b90>, <Html5Audio(component_manager=<...>) at remote 0x7f0acf1a6bd0>, <Html5Video(component_manager=<...>) at remote 0x7f0acf1a6c10>, <RTLHandler(component_manager=<...>) at remote 0x7f0acf1a6c50>, <NonLatinFontSizeIncrease(component_manager=<...>) at remote 0x7f0acf1a6c90>], component_manager=<...>, _renderer_for_card_type={None: <HtmlCss(_css={}, component_manager=<...>) at remote 0x7f0acf1a6cd0>}, _renderers=[<...>]) at remote 0x7f0acf1a6ad0>, 'sync_to_card_only_client': <SyncToCardOnlyClient(_filters=[<EscapeToHtml(component_manager=<...>) at remote 0x7f0acf1a6dd0>, <Latex(component_manager=<...>) at remote 0x7f0acf1a6e10>], component_manager=<...>, _renderer_for_card_type={None: <HtmlCss(_css={}, component_manager=<......(truncated)) at ../Objects/typeobject.c:4842
#10 wrapper_call.lto_priv () at ../Objects/descrobject.c:1035
#11 0x000055c3bf609da3 in PyObject_Call () at ../Objects/abstract.c:2547
#12 0x000055c3bf627a20 in PyEval_CallObjectWithKeywords () at ../Python/ceval.c:4219
#13 0x000055c3bf6ca5af in wrapperdescr_call.lto_priv () at ../Objects/descrobject.c:343
#14 0x000055c3bf609da3 in PyObject_Call () at ../Objects/abstract.c:2547
#15 0x000055c3bf6233f2 in do_call (nk=<optimized out>, na=<optimized out>, pp_stack=0x7ffdca8b4240, func=<optimized out>) at ../Python/ceval.c:4567
#16 call_function (oparg=<optimized out>, pp_stack=0x7ffdca8b4240) at ../Python/ceval.c:4372
#17 PyEval_EvalFrameEx () at ../Python/ceval.c:2987
#18 0x000055c3bf61bb85 in PyEval_EvalCodeEx () at ../Python/ceval.c:3582
#19 0x000055c3bf637e3e in function_call.lto_priv () at ../Objects/funcobject.c:523
#20 0x000055c3bf609da3 in PyObject_Call () at ../Objects/abstract.c:2547
#21 0x000055c3bf64db4e in instancemethod_call.lto_priv () at ../Objects/classobject.c:2602
#22 0x000055c3bf609da3 in PyObject_Call () at ../Objects/abstract.c:2547
#23 0x000055c3bf64d8c7 in slot_tp_init.lto_priv () at ../Objects/typeobject.c:5786
#24 0x000055c3bf60f854 in type_call.lto_priv () at ../Objects/typeobject.c:765
#25 0x000055c3bf609da3 in PyObject_Call () at ../Objects/abstract.c:2547
#26 0x000055c3bf6233f2 in do_call (nk=<optimized out>, na=<optimized out>, pp_stack=0x7ffdca8b47f0, func=<optimized out>) at ../Python/ceval.c:4567
#27 call_function (oparg=<optimized out>, pp_stack=0x7ffdca8b47f0) at ../Python/ceval.c:4372
#28 PyEval_EvalFrameEx () at ../Python/ceval.c:2987
#29 0x000055c3bf61bb85 in PyEval_EvalCodeEx () at ../Python/ceval.c:3582
#30 0x000055c3bf623cfd in fast_function (nk=0, na=1, n=<optimized out>, pp_stack=0x7ffdca8b4a00, func=<optimized out>) at ../Python/ceval.c:4445
#31 call_function (oparg=<optimized out>, pp_stack=0x7ffdca8b4a00) at ../Python/ceval.c:4370
#32 PyEval_EvalFrameEx () at ../Python/ceval.c:2987
#33 0x000055c3bf61bb85 in PyEval_EvalCodeEx () at ../Python/ceval.c:3582
#34 0x000055c3bf6234dd in fast_function (nk=4, na=1, n=<optimized out>, pp_stack=0x7ffdca8b4c10, func=<optimized out>) at ../Python/ceval.c:4445
#35 call_function (oparg=<optimized out>, pp_stack=0x7ffdca8b4c10) at ../Python/ceval.c:4370
#36 PyEval_EvalFrameEx () at ../Python/ceval.c:2987
#37 0x000055c3bf61bb85 in PyEval_EvalCodeEx () at ../Python/ceval.c:3582
#38 0x000055c3bf61b929 in PyEval_EvalCode (co=<optimized out>, globals=<optimized out>, locals=<optimized out>) at ../Python/ceval.c:669
#39 0x000055c3bf64b04f in run_mod.lto_priv () at ../Python/pythonrun.c:1376
#40 0x000055c3bf645b72 in PyRun_FileExFlags () at ../Python/pythonrun.c:1362
#41 0x000055c3bf6addad in builtin_execfile.lto_priv () at ../Python/bltinmodule.c:814
#42 0x000055c3bf624a96 in call_function (oparg=<optimized out>, pp_stack=0x7ffdca8b4f90) at ../Python/ceval.c:4350
#43 PyEval_EvalFrameEx () at ../Python/ceval.c:2987
#44 0x000055c3bf61bb85 in PyEval_EvalCodeEx () at ../Python/ceval.c:3582
#45 0x000055c3bf61b929 in PyEval_EvalCode (co=<optimized out>, globals=<optimized out>, locals=<optimized out>) at ../Python/ceval.c:669
#46 0x000055c3bf67a0a6 in run_mod.lto_priv.2010 (arena=0x55c3c02781a0, flags=0x0, locals={'debugger': <function at remote 0x7f0b0b408ed8>, 'args': [], '__title__': 'pydb', 'parser': <OptionParser(process_default_values=True, allow_interspersed_args=True, _long_opt={'--no-upgrades': <Option(_long_opts=['--no-upgrades'], help='do not upgrade automatically', callback_args=None, callback=None, default=True, nargs=None, choices=None, dest='automatic_upgrades', container=<...>, _short_opts=[], action='store_false', const=None, callback_kwargs=None, type=None, metavar=None) at remote 0x7f0acf1ac638>, '--debug': <Option(_long_opts=['--debug'], help='log debug information to FILE', callback_args=None, callback=None, default=None, nargs=1, choices=None, dest='debug_file', container=<...>, _short_opts=[], action='store', const=None, callback_kwargs=None, type='string', metavar='FILE') at remote 0x7f0acf1ac758>, '--help': <Option(_long_opts=['--help'], help='show this help message and exit', callback_args=None, callback=None, default=('NO', 'DEFAULT'), nargs=None, choices=None, dest=None, container=<...>, _s...(truncated), globals={'debugger': <function at remote 0x7f0b0b408ed8>, 'args': [], '__title__': 'pydb', 'parser': <OptionParser(process_default_values=True, allow_interspersed_args=True, _long_opt={'--no-upgrades': <Option(_long_opts=['--no-upgrades'], help='do not upgrade automatically', callback_args=None, callback=None, default=True, nargs=None, choices=None, dest='automatic_upgrades', container=<...>, _short_opts=[], action='store_false', const=None, callback_kwargs=None, type=None, metavar=None) at remote 0x7f0acf1ac638>, '--debug': <Option(_long_opts=['--debug'], help='log debug information to FILE', callback_args=None, callback=None, default=None, nargs=1, choices=None, dest='debug_file', container=<...>, _short_opts=[], action='store', const=None, callback_kwargs=None, type='string', metavar='FILE') at remote 0x7f0acf1ac758>, '--help': <Option(_long_opts=['--help'], help='show this help message and exit', callback_args=None, callback=None, default=('NO', 'DEFAULT'), nargs=None, choices=None, dest=None, container=<...>, _s...(truncated), filename=0x55c3bf746260 "<string>", mod=<optimized out>) at ../Python/pythonrun.c:1376
#47 PyRun_StringFlags () at ../Python/pythonrun.c:1339
#48 0x000055c3bf625862 in exec_statement (locals={'debugger': <function at remote 0x7f0b0b408ed8>, 'args': [], '__title__': 'pydb', 'parser': <OptionParser(process_default_values=True, allow_interspersed_args=True, _long_opt={'--no-upgrades': <Option(_long_opts=['--no-upgrades'], help='do not upgrade automatically', callback_args=None, callback=None, default=True, nargs=None, choices=None, dest='automatic_upgrades', container=<...>, _short_opts=[], action='store_false', const=None, callback_kwargs=None, type=None, metavar=None) at remote 0x7f0acf1ac638>, '--debug': <Option(_long_opts=['--debug'], help='log debug information to FILE', callback_args=None, callback=None, default=None, nargs=1, choices=None, dest='debug_file', container=<...>, _short_opts=[], action='store', const=None, callback_kwargs=None, type='string', metavar='FILE') at remote 0x7f0acf1ac758>, '--help': <Option(_long_opts=['--help'], help='show this help message and exit', callback_args=None, callback=None, default=('NO', 'DEFAULT'), nargs=None, choices=None, dest=None, container=<...>, _s...(truncated), globals={'debugger': <function at remote 0x7f0b0b408ed8>, 'args': [], '__title__': 'pydb', 'parser': <OptionParser(process_default_values=True, allow_interspersed_args=True, _long_opt={'--no-upgrades': <Option(_long_opts=['--no-upgrades'], help='do not upgrade automatically', callback_args=None, callback=None, default=True, nargs=None, choices=None, dest='automatic_upgrades', container=<...>, _short_opts=[], action='store_false', const=None, callback_kwargs=None, type=None, metavar=None) at remote 0x7f0acf1ac638>, '--debug': <Option(_long_opts=['--debug'], help='log debug information to FILE', callback_args=None, callback=None, default=None, nargs=1, choices=None, dest='debug_file', container=<...>, _short_opts=[], action='store', const=None, callback_kwargs=None, type='string', metavar='FILE') at remote 0x7f0acf1ac758>, '--help': <Option(_long_opts=['--help'], help='show this help message and exit', callback_args=None, callback=None, default=('NO', 'DEFAULT'), nargs=None, choices=None, dest=None, container=<...>, _s...(truncated), prog=<optimized out>, f=<optimized out>) at ../Python/ceval.c:5084
#49 PyEval_EvalFrameEx () at ../Python/ceval.c:2106
#50 0x000055c3bf61bb85 in PyEval_EvalCodeEx () at ../Python/ceval.c:3582
#51 0x000055c3bf6234dd in fast_function (nk=0, na=2, n=<optimized out>, pp_stack=0x7ffdca8b5400, func=<optimized out>) at ../Python/ceval.c:4445
#52 call_function (oparg=<optimized out>, pp_stack=0x7ffdca8b5400) at ../Python/ceval.c:4370
#53 PyEval_EvalFrameEx () at ../Python/ceval.c:2987
#54 0x000055c3bf6231df in fast_function (nk=<optimized out>, na=<optimized out>, n=2, pp_stack=0x7ffdca8b5550, func=<optimized out>) at ../Python/ceval.c:4435
#55 call_function (oparg=<optimized out>, pp_stack=0x7ffdca8b5550) at ../Python/ceval.c:4370
#56 PyEval_EvalFrameEx () at ../Python/ceval.c:2987
#57 0x000055c3bf61bb85 in PyEval_EvalCodeEx () at ../Python/ceval.c:3582
#58 0x000055c3bf6234dd in fast_function (nk=0, na=0, n=<optimized out>, pp_stack=0x7ffdca8b5760, func=<optimized out>) at ../Python/ceval.c:4445
#59 call_function (oparg=<optimized out>, pp_stack=0x7ffdca8b5760) at ../Python/ceval.c:4370
#60 PyEval_EvalFrameEx () at ../Python/ceval.c:2987
#61 0x000055c3bf61bb85 in PyEval_EvalCodeEx () at ../Python/ceval.c:3582
#62 0x000055c3bf61b929 in PyEval_EvalCode (co=<optimized out>, globals=<optimized out>, locals=<optimized out>) at ../Python/ceval.c:669
#63 0x000055c3bf64b04f in run_mod.lto_priv () at ../Python/pythonrun.c:1376
#64 0x000055c3bf645b72 in PyRun_FileExFlags () at ../Python/pythonrun.c:1362
#65 0x000055c3bf6442fe in PyRun_SimpleFileExFlags () at ../Python/pythonrun.c:948
#66 0x000055c3bf5f7262 in Py_Main () at ../Modules/main.c:640
#67 0x00007f0b0c25f3f1 in __libc_start_main (main=0x55c3bf5f6b90 <main>, argc=5, argv=0x7ffdca8b5ba8, init=<optimized out>, fini=<optimized out>, rtld_fini=<optimized out>, stack_end=0x7ffdca8b5b98) at ../csu/libc-start.c:291

in other words, pydb works fine the *first time* it is run on mnemosyne, but the *second time* it gets caught up on something while you're continuing. Typically at the same spot, even though the code hasn't changed. Wildly different behaviour while being debugged is one thing, but different behaviour by being debugged *only a second time* at least sure seems like a bug on the pydb side. Typically the only way to get out is to kill pydb so hard to say whether this is only a '2nd time' thing.

pydb: 1.26-2
Ubuntu: 16.10

ProblemType: Bug
DistroRelease: Ubuntu 16.10
Package: pydb 1.26-2
ProcVersionSignature: Ubuntu 4.8.0-22.24-generic 4.8.0
Uname: Linux 4.8.0-22-generic x86_64
ApportVersion: 2.20.3-0ubuntu8
Architecture: amd64
CurrentDesktop: GNOME
Date: Wed Oct 19 11:55:23 2016
Dependencies:

EcryptfsInUse: Yes
InstallationDate: Installed on 2014-07-09 (832 days ago)
InstallationMedia: Ubuntu-GNOME 14.10 "Utopic Unicorn" - Alpha amd64 (20140708)
PackageArchitecture: all
SourcePackage: pydb
UpgradeStatus: Upgraded to yakkety on 2016-10-16 (2 days ago)

Revision history for this message
themusicgod1 (themusicgod1) wrote :
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.