Debugger doesn't follow the trace well and make it very hard debug

I have the Pycharm Professional and often got this problem:

 

When I trace the logic in debugger, sometimes at a step, the tracer doesn't stop at the source line it should be, and therefore makes it hard to understand the logic. The attached screenshot is a good example to show the problem. Please read it and hopefully let me know it's a known issue and has a solution to it. It's very important.

As you can see from the screenshot, the 'variable

en_start_index_found = False

But the tracer stops at the inside of the condition check:

if en_start_index_found:

' How can this happen? Such things make me hard to follow the logic. This doesn't happen all the time but it indeed happens sometimes.

5 comments
Comment actions Permalink

I suspect it's related to this issue: https://youtrack.jetbrains.com/issue/PY-39432

Could you try to add PYDEVD_USE_CYTHON=NO env variable to your run/debug configuration as mentioned here: https://youtrack.jetbrains.com/issue/PY-39432#focus=streamItem-27-3842288.0-0 ?

1
Comment actions Permalink

Thanks for the info, but my code does use cython, so I can't disable it. Is this issue being actively worked?

0
Comment actions Permalink

>my code does use cython

This is irrelevant AFAIK, we disable cython speedups only for debugger in this case.

Please add the env variable according to https://youtrack.jetbrains.com/issue/PY-39432#focus=streamItem-27-3842288.0-0 and let me know if it helps.

0
Comment actions Permalink

I'm running into this problem also. (I'm up-to-date with Build #PY-193.6911.25, built on March 18, 2020).  The PYDEVD_USE_CYTHON=NO setting seems to fix it. (And after a couple more days, it definitely does seem to have worked.)

 

It may be coincidence, but I did not notice the issue prior to installing the latest update.

 

0

Please sign in to leave a comment.