kliment / Printrun

Pronterface, Pronsole, and Printcore - Pure Python 3d printing host software
GNU General Public License v3.0
2.38k stars 996 forks source link

Pronterface showing traceback error #1007

Open oldegoraptor opened 5 years ago

oldegoraptor commented 5 years ago

I ran into this issue a few times on multiple multi day prints. So far I've only had this happen with this object. The error wasn't generated until I updated my firmware on my Prusa I3 MK2. This error showed up when slicing with Cura 3.0.4, and PrusaSlicer 2.0. I was able to get past this issue by spamming pause/resume until the printer continued by itself. I am unable to provide the STL and Gcode due to size, but would be more than happy to email them to support bug fixes.

Error message is as follows:

[ERROR] Print thread died due to the following error: Traceback (most recent call last): File "printrun\printcore.pyc", line 534, in _print File "printrun\printcore.pyc", line 619, in _sendnext File "printrun\printcore.pyc", line 644, in _send MemoryError

volconst commented 5 years ago

This is a memory leak - dict sentlines is never freed. I believe this can be fixed with a macro even for running instances.

volconst commented 5 years ago

Try this macro: !print('Before free', len(self.p.sentlines)) !_max = 0 !_min = float('inf') !for k in self.p.sentlines.iterkeys(): ! _max = max(_max,k) ! _min = min(_min,k) !print('min max', _min, _max) !if _min < _max: ! for k in xrange(_min, _max-1024): ! self.p.sentlines.pop(k, None) !print('After free', len(self.p.sentlines))

It should be run when the MemoryError is about to happen or ealier, even every 100 layers in the slicer if supported

CostanzoPablo commented 4 years ago

Already fixed. You must put: (i tried on windows, and get working)

git clone https://github.com/kliment/Printrun py -m venv venv venv\Scripts\activate python -m pip install -r requirements.txt python pronterface.py

rockstorm101 commented 4 years ago

Hi @oldegoraptor, I know the issue is quite old, but were you able to solve this problem? Did you try the given solution?

oldegoraptor commented 4 years ago

I haven’t been able to mess with it for the last couple months due to a move from the EU. But my stuff arrives here in the next week so I’ll be able to see if the fix mentioned before takes care of that issue.

Sent from Mailhttps://go.microsoft.com/fwlink/?LinkId=550986 for Windows 10

From: Rock Stormmailto:notifications@github.com Sent: Saturday, April 18, 2020 13:28 To: kliment/Printrunmailto:Printrun@noreply.github.com Cc: oldegoraptormailto:cb7accord1993@live.com; Mentionmailto:mention@noreply.github.com Subject: Re: [kliment/Printrun] Pronterface showing traceback error (#1007)

Hi @oldegoraptorhttps://github.com/oldegoraptor, I know the issue is quite old, but were you able to solve this problem? Did you try the given solutionhttps://github.com/kliment/Printrun/issues/1007#issuecomment-500525377?

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHubhttps://github.com/kliment/Printrun/issues/1007#issuecomment-615932014, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AMIL6SWZCT3Q7TPDK34WZGTRNH5MXANCNFSM4HUVLEQQ.

rockstorm101 commented 4 years ago

Hi @oldegoraptor, I hope your moving went alright, do you have any updates on this?

davija commented 4 years ago

When I got this error and printing stopped, I was able to hit pause, define and run the macro and then hit resume and it worked. Thanks for the macro @volconst!

volconst commented 4 years ago

Thanks for the feedback, @davija ! How large was the file in MB and lines?

davija commented 4 years ago

Here is the file

modified-fan-base3.zip

volconst commented 4 years ago

2.1M lines, 67MB, thanks.