Debugger stopping in all threads after resuming from a breakpoint (PY-20158)
authorElizaveta Shashkova <Elizaveta.Shashkova@jetbrains.com>
Sat, 30 Jul 2016 16:32:40 +0000 (19:32 +0300)
committerElizaveta Shashkova <Elizaveta.Shashkova@jetbrains.com>
Sat, 30 Jul 2016 16:33:37 +0000 (19:33 +0300)
commit79b865d6df10f8029b6064e265658a376ded1b57
tree4a603bce4aa0c1e1189090f45c94cc4566cc57d7
parentb9b36570e8617cac89f93617d09d7a773f756b1c
Debugger stopping in all threads after resuming from a breakpoint (PY-20158)

Sometimes it isn't possible to suspend thread, which is sleeping or waiting on lock. This thread is trying to suspend, but it's not suspended yet. When user is sending "Resume" command, we don't resume this thread, because it isn't suspended. After that, when this thread stops waiting, it doesn't know anything about Resume command and it's trying to suspend.
So, we need to send Run command to all threads (suspended and non-suspended) and we should do it without using internal command.
python/helpers/pydev/_pydevd_bundle/pydevd_process_net_command.py
python/src/com/jetbrains/python/debugger/PyDebugProcess.java
python/testData/debug/test_two_threads_resume.py [new file with mode: 0644]
python/testSrc/com/jetbrains/env/python/PythonDebuggerTest.java