question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

Infinite Looping on "mustNotHaveValue"

See original GitHub issue

Let’s consider sample program and nuitka call for compilation: https://github.com/belonesox/nuitka-looping-mustNotHaveValue

  • pipenv-based setup-demo.bat
  • on demo_cycling.bat we got infinite loop
File "C:\ta-buildroot\python-x86-3.7.9\lib\site-packages\nuitka\optimizations\ValueTraces.py", line 560, in mustNotHaveValue
    if not previous.mustNotHaveValue():
  File "C:\ta-buildroot\python-x86-3.7.9\lib\site-packages\nuitka\optimizations\ValueTraces.py", line 383, in mustNotHaveValue
    return self.previous.mustNotHaveValue()
  File "C:\ta-buildroot\python-x86-3.7.9\lib\site-packages\nuitka\optimizations\ValueTraces.py", line 560, in mustNotHaveValue
    if not previous.mustNotHaveValue():
  File "C:\ta-buildroot\python-x86-3.7.9\lib\site-packages\nuitka\optimizations\ValueTraces.py", line 383, in mustNotHaveValue
    return self.previous.mustNotHaveValue()
  File "C:\ta-buildroot\python-x86-3.7.9\lib\site-packages\nuitka\optimizations\ValueTraces.py", line 560, in mustNotHaveValue
    if not previous.mustNotHaveValue():
  File "C:\ta-buildroot\python-x86-3.7.9\lib\site-packages\nuitka\optimizations\ValueTraces.py", line 383, in mustNotHaveValue
    return self.previous.mustNotHaveValue()
  File "C:\ta-buildroot\python-x86-3.7.9\lib\site-packages\nuitka\optimizations\ValueTraces.py", line 560, in mustNotHaveValue
    if not previous.mustNotHaveValue():
  File "C:\ta-buildroot\python-x86-3.7.9\lib\site-packages\nuitka\optimizations\ValueTraces.py", line 383, in mustNotHaveValue
    return self.previous.mustNotHaveValue()
  File "C:\ta-buildroot\python-x86-3.7.9\lib\site-packages\nuitka\optimizations\ValueTraces.py", line 560, in mustNotHaveValue
    if not previous.mustNotHaveValue():

image

I reproduce it on Windows with python-x86-3.7.9 and nuitka = "0.6.18.3", but I will try it on Linux and other versions of Nuitka. Also I will try to simplify testcase

Issue Analytics

  • State:closed
  • Created 2 years ago
  • Comments:29 (29 by maintainers)

github_iconTop GitHub Comments

1reaction
kayhayencommented, Dec 21, 2021

It finished for me in definitely less than one hour, I am using --enable-plugin=anti-bloat --noinclude-default-mode=error, I think you never got my anti-bloat references, but it reduces the compilation by a lot. It took me max 30 minutes, I didn’t check closely.

I am suspecting you are reaching a low memory situation which can make things slow. Still with anti-bloat, 2k modules are compiled, which is borderline, but there is a lot that anti-bloat doesn’t do yet.

I have had to find and fix a regression in the generated C code for a string operation, therefore I don’t know if it runs at all, but I think it ought to. But with these large compilations I am waiting for more anti-bloat work to happen over time.

0reactions
kayhayencommented, Feb 20, 2022

Good, you didn’t notice that 0.7 is out since today. 😃

Read more comments on GitHub >

github_iconTop Results From Across the Web

The INFINITE Looping Build! - YouTube
Today I found some infinites and used my Infinite Looping Build to show off some new types of infinites which can be created...
Read more >
3 ways to cause an infinite loop in React - Alex Sidorenko
Uncaught Error: Too many re-renders. React limits the number of renders to prevent an infinite loop. Here are 3 potential causes of the...
Read more >
Infinite Loops - Elements Docs
An infinite loop is a loop that executes a statement or a block of statements repeatedly, without a guarding condition to determine its...
Read more >
Infinite Loops in Javascript - Flexiple
An infinite loop is a piece of code that keeps running forever as the terminating condition is never reached. An infinite loop can...
Read more >
Infinite loops and break · CodeCraft-Python - BuzzCoder
This is called an infinite loop, which can cause your program to freeze. Be cautious when using a while loop! Break ing out...
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found