-
-
Notifications
You must be signed in to change notification settings - Fork 1.2k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Application and system freeze on Windows #53
Comments
i cannot reproduce this bug on WinXP. i do not have access to any windows 7 machine. if someone wants to provide remote access to a windows 7 machine i will be happy to look into this bug. |
Windows XP! The fat-cats at OpenSCAD clearly aren't paying you enough ;-) The nature of the problem is such that it would probably lockup any remote desktop session. We could try a Google+ Hangout via my phone and I can point it at the screen. This is me: https://plus.google.com/118363380530058848433 |
Sorry but I will need 50+ hours of interactive remote desktop access to an actual machine to do anything useful. My first step would be to try to compile QT and OpenSCAD using an updated version of a free MSVC: http://en.wikibooks.org/wiki/OpenSCAD_User_Manual/Building_on_Windows I would also test the cross-compiled MINGW/GNU version of OpenSCAD vs the MSVC compiled version to see if it happened on both. I would probably also try compiling with vs without optimization flags to the compiler. IIRC the remote desktop programs include 'send ctrl-alt-delete' function in their window menu. |
Thanks for trying to repro anyway. Not sure we can do much without a budget for a real machine or rental time on virtual Windows machine. It still smells like a problem that won't manifest remotely, but I will experiment at home and add anything I find that might help. |
Ok some more ideas.
https://github.com/downloads/donbright/openscad/openscad.zip If someone could try it it would be cool. |
hit a bit of a problem installing Windows 8 developer preview. when you go to install the Visual Studio Express, here is the license you have to agree to: "If you comply with these license terms, you have the rights below.
• " So if i am using it to fix a bug that is probably 'development' and if i upload the patch to github, thats probably 'distributing'. So that plan will not work. Back to cross-compiling. |
Frustratingly it has stopped happening after some OS updates and a reboot. Here are the updates: http://imgur.com/Xcnre, but it might simply have been the reboot. In answer to your questions: I've only seen the problem on my ACER laptop running 64 bit Windows. I tried the other version you uploaded on 31 December, but it also locked up (and is now working OK). I will make some designs in OpenSCAD and see if it happens again. If I can't reproduce it within a reasonable time I will close the issue. |
thanks i just tried the 32 bit release version of openscad for windows on Windows 8 developer preview 32-bit and it works, although it is a little choppy (not smooth). |
Just to clarify what is going on, could you do the following?
|
It's actually stopped happening now, possibly because of a Windows Update (see previous post), but there was nothing obvious in the list of update packages, expect perhaps the VC Runtime security update: maybe my VC Runtime files were corrupt and this update patched them? If it starts happening again I will be straight back on here with more info.
GLEW version 1.7.0 RGBA(8888), depth(24), stencil(8) |
Another thing to test if this bug arises again: |
Its happening again. Adding the OPENSCAD_DISABLE_GL20 variable didn't make a difference; I know it was active because there is a warning dialog on start-up. I'll try a reboot and report back if it helps, otherwise I'm happy to try other things if you have any suggestions. |
is there any chance it is your video drivers? |
I was on the latest version, but I did a reinstall to be sure (in case any DLLs had become corrupt). The problem has gone away, but it might have been the reboot. I will try it periodically and let you know how it goes. |
i managed to get an amazon AWS remote desktop of Windows Server 2008, but i still cannot reproduce this problem. my best guess right now, is that there is some kind of bad interaction between the video drivers and some part of openscad (maybe qt?). if there was some way to switch to 'software rendering' it would narrow it down somewhat, but i am not sure how you do that in windows. |
there are several people on the mailing list having some similar issues. here is what Nop Head wrote: "I just had it happen to me again when I had my Python machine control script running. It always causes the lockup, but the interesting thing is that it still does it during the bed cool down routine, which is only polling the machine very second. In between it is sleeping, so how it manages to have such a dramatic effect on Openscad I have no idea. It doesn't even have a GUI, just Ethernet UDP comms, a few packets every second. As soon as it terminated openscad un-froze." Here is Pasca Andrei "Ah, OK...This was the first time for me when it happend - I had an MS Fffice 2007 document oppend. After I closed it, the problem was gone. And that could be a big problem for me as I can't control what applications are running when openscad is launched by others with my models..." I am beginning to think maybe a good way to track down this bug might be to write some kind of non-QT interface for openscad and see if it dies then too - at least that will narrow things down. But that is probably a few months off. |
To remove any doubt about 32 bit versus 64: it happens reliably on my 32 bit Windows XP Professional IBM/Lenovo R60e. On the other hand it never happens on my Dell Dimension 2400 (Windows XP home), or on another more recent Dell running Vista. I don't think I'm the only one who has said this, but the problem seems consistent with a hijacking of most user input messages. It is produced by clicking in the viewport. Note that I don't even have to have anything rendered to produce the problem. I can open OpenSCAD, click 10 times in the (empty) viewport, and produce the problem seemingly 100% of the time. Ctrl-alt-del followed by an ESC (cancel) usually unblocks it. This seems consistent with a user input issue, since the ctrl-alt-del message, being the ultimate meta-key, is handled at a different or lower level. Sometimes I have to start the process manager and kill OpenSCAD to unblock the system. The problem does not seem to stop anything other than user input messages. If I have the Windows clock running and visible, I can see the second hand keeping on ticking while the problem occurs. When it happens, the Windows key toggles the start menu, but other keys e.g. the cursor keys that normally let you cycle among start menu items, are ignored. So it is affecting some but not all keystrokes as well as mouse clicks, once again pointing to a user input message processing issue. Whether the problem happens in a remote session is an interesting question, but I think it's quite likely it won't be debuggable in a remote session: if it happens, it probably won't be possible to recover from it unless a ctrl-alt-del can be simulated on the remote machine. I can try this as well. I ran Spy++ to look at system messages and I can confirm that after the problem occurs, system messages from mouse clicks and movements and key presses stop appearing as posted to the OpenSCAD window, and also to the desktop, as two examples I tried. |
Thanks for the thorough report. I'm starting to think that this is triggered by one of two things: It would be interesting to try the build environment path first. Don: Did you ever get a Visual Studio build up and running? |
no, i dont have access to a windows machine anymore. sorry. i havent been able to do much lately, alot of stuff happening in 'real life'. |
I have this same issue on a laptop running Windows Vista (32 bit). All drivers (touchpad, display, etc) are up to date. If I switch to my desktop PC it works fine. I believe this is an issue with the touchpads on laptops. |
On my Windows XP laptop it happens equally with a USB mouse. |
Hi, I've exactly the same problem. I tried older versions of OpenScad too with the same results. I do use VS-2010 and some Phyton programs, but not as the same moment |
I had this same issue on my Windows 7 x64 Dell Laptop. When I googled it I found a post that indicated it was related to Microsoft's Intelipoint. So, I uninstalled Intellipoint and rebooted my system. It now seems to work fine for me. I hope this helps. |
Have the developers been able to replicate this issue? I have been suffering with this issue for a year now. Running Windows 7 64bit. Openscad will work fine after a reboot and eventually it will start freezing up. I'll need to ctl-alt-delete and then the desktop will unfreeze. Then I need to reboot again before I can use openscad. I tried uninstalling intellipoint and I still have the problem. This is a really frustrating problem that seems to be effecting a lot of users. I'm really hoping the dev's will be able to recreate the issue and find a solution. |
_Edit: If you are having this problem please read my comment below and install the Microsoft re-distributable instead of python to help narrow down the problem_ I was having this problem on a Win7 32bit. I tried several different openscad versions with the same result. I kept the OS upto date with no solution. I had to keep using Ctrl-Alt-Del and then the task manager to kill it. What fixed it properly was installing the latest version of Python on the machine. I saw the thread at |
that is really bizarre - the Openscad GUI does not use python. if python is the problem, then stopping all running python programs should allow OpenSCAD to work regardless of the version of python installed. Unless there is some hidden program running in the background using python? as nophead pointed out, python3 is not very compatible with python2, it seems like some users might have an issue doing this upgrade since their python2 programs might not work? |
Hm, perhaps the python installer updates some system libraries which we use? Sounds dubious though. |
_Edit: If you are having this problem please read my comment below and install the Microsoft re-distributable instead of python to help narrow down the problem_ Very curious indeed. I was was following the advise given in the link above. I had openscad installed for maybe a month, tried to get it working a dozen different ways with no luck; then tried the python install and it works every time. Could someone else who is getting freezes give it a try and post results. kintel might be on to something as others have reported other updates fixing it as well. |
I've consistently had issues on my laptop, but my desktop works fine. I installed Python 3.2.3 on my laptop and now I can use the zoom in and out function without having to CTRL-ALT-DEL. I'm running Windows Vista Home 32-bit and OpenSCAD 2012.04.01. Thank you for the suggestion, installing python 3.2.3 now makes OpenSCAD usable on my laptop. |
Be interesting to see long term if you don't encounter the issue anymore. I uninstalled the intellimouse in the control panel and it is less frequent. Before I needed to reboot when it started happening. Now I can usually just close running apps and I can get it responding again. Still a pain but better than having to reboot. |
And confirmed: Rebooting my system (no updates included) alleviates the symptoms. If they return, I will post again with an approximate log of the events leading up to the recurrence. |
After only running a single instance of OpenSCAD and Chrome for just a few hours, the symptoms have returned Also, task manager shows that one of the CPU cores goes to nearly 100% usage during the period of input-lockout. More specifically, upon using Control+Alt+Delete->Escape to restore control, the histograms show a period of CPU-grind. Is it possible that there's a tight-loop within the mouse-look code? What sort of hook is being used to enter a cursor-less delta mode? Is it possible that the mouse-look code is performing some sort of calculations based on the OS up-time? |
AustinSpafford: most of the mouse code is here: https://github.com/openscad/openscad/blob/master/src/GLView.h It basically subclasses QT's QGLWidget and uses some matrix math to change the OpenGL translation matrix. http://qt-project.org/doc/qt-4.8/QGLWidget.html |
I have this issue too. W7Ultimate/64. I have 7 MS VC++ Redistributables installed; 2 x 2005(x64) {0.0.56336, 8.0.61000}, That's interesting, didn't notice the duplication until I had to type it...also the dups have different sizes (??) I'll try uninstalling the dups and confirm whether it still occurs, noting that these were installed as dependencies when I installed other stuff (god knows what). TBC. On second thoughts I won't do this yet as they will be version dependencies of the other products. My observations are much like Austin's. I can get it with a newly started OpenSCAD without a file loaded. Hence no Compile or Render (auto compile is off). Basically with OpenSCAD not the foreground task, one click on the yellow pane and pop - up goes the CPU 50% of dual core and input blocked except for the Mouse movement (no display highlighting happens when moving mouse over icons that normally do something on a hover), Windows key & Ctl-Alt-Del. Other tasks are still running eg I have a sidebar-ish thing which is happily updating various info & Task Manager is still updating it's window. One or sometimes two cycles of Ctl-Alt-Del & Esc gets it back, then it may behave for a while, but sometimes happens every time again for a while. I have just tried a few things, it appears that if I click on the windows title bar to bring it to foreground before clicking on the yellow pane it doesn't happen. So it may be due to the windows Activation messages WM_ACTIVATEAPP and/or WM_ENABLE not being handled appropriately?? ie I think the owner process of the yellow pane may not be removing a message from the message queue hence all input messages are queued. This is consistent with what happens after C-A-Del, as all the mouse movements (drags etc) in the yellow pane happen, like a replay, just after C-A-Del and before the C-A-Del-Blue-Screen pops up. I just tried repeatedly activating OpenSCAD by clicking on the console area before the yellow pane, it does not cause the issue. I had Task Manager open with the OpenSCAD process highlighted, just as it happens, the Working Set has a ~8-12M drop (only with a model loaded), don't know if that is relevant. I hope that help track something down. I'm not an in-depth Windows Programmer, but am reasonably proficient, let me know if I can help some more. Michael |
ps For others, that may be a work-around. Click on the title bar or the console to activate the OpenSCAD window. Seems to be working for me. |
Ok. here is a question. Giles Bathgate's RapCAD has many similarities to OpenSCAD, for example it has a QWidget of type GLView that has many of the same functions. Does RapCAD have the same issues as OpenSCAD on these boxes? Does it freeze up? Does the system lock? |
Update, all it takes is the Mouse_Down, doesn't need the Mouse_Up to cause it. I'll give RapCad a go. |
Well there you go, it happens with RapCad too. |
In https://github.com/openscad/openscad/blob/master/src/glview.cc
Just a hunch; don't use grabMouse at all; as per the doco;
|
Sorry, don't mean to spam, but I found this Warning: If you call setFocus() in a function which may itself be called from focusOutEvent() or focusInEvent(), you may experience infinite recursion. Infinite recursion sounds like what is going on. |
I committed a fix which removes grabMouse() and setFocus() as I indeed didn't see the need for those calls. |
That will be so awesome if this fixes the issue. It is so annoying. |
i am not very experienced with the cross compile but here is a bare bones openscad.exe made with Marius' new patch: https://github.com/downloads/donbright/openscad/openscad.zip I am not even sure how many 'bits' it is. but it works on Wine. |
Quick test looks good so far. Thanks. The console is a bit more wordy, presumably debugging level (PolySetCache hit:... CGAL Cache insert...)? Will report back after more extensive use. ps running as 32bit app. Seems to run quicker, particularly Rendering. |
Looks good indeed. I tried without success to make the new version freeze up. Just to be sure nothing had changed (in the system) I ran the old .exe and got it to freeze within a few seconds of clicking around in the view window. It seems pretty likely to me that this fixes the problem. I am going to go out on a limb and say thank you to everyone who helped diagnose and fix this. I will now get down to learning OpenSCAD now that it is usable on my machine! |
Well I have not had 'the' issue with the fix, but I had others which I don't with the old version (2011.12.30). I just had a crash, just after loading and autocompiling a .scadProblem signature: Additional Information 4: a7aa91f17ea749d42a4de3b390fa5b3dThat was after loading working on various files. Rerunning the fixed OpenSCAD, then reloaded the same file, autocompile. When I did a Render I got:MS V C++ Runtime Library Dialog Box; Expression: px != 0 For info... Abort Retry IgnoreShould I lodge these separately? <sorry, didn't know the lines would do the loud formatting> |
ouch. please do file a bug. if there is any reproducibility, or small example .scad, it would be very helpful. |
Issue #148 raised for above. |
Seems to fix the lock up but it prints a lot of debug information about cache hits. Also 0.8 seems to now print as 0.80000000000000004 in an echo, which really messes up my BOM generation. |
The debug info is because don's build is a debug build and should be gone in the next release build. |
Some values used to do it before. I think recurring binary fractions don't get rounded nicely. I can't think why it changed unless this version uses a different floating point library. |
There was some refactoring of the variants in the backend. That might have caused it. |
I believe this has been fixed now - closing. |
For anyone viewing this, a working non-freezing Windows installer available at http://www.openscad.org . Please choose a version newer than July 2012 (Either the Development Snapshot or any releases made after July 2012) |
After rendering any model (F5 or F6) any attempt to rotate or translate the viewport (using the mouse) causes the application to freeze. It also causes Windows to become completely unresponsive to everything but CTRL + ALT + DELETE, which curiously brings OpenSCAD back to life and allows it to move the viewport. However, the problem occurs again as soon as the viewport is moved. Sometimes only Task Manager can save you from having to do a hard reset.
I'm using Windows 7 Home Premium 64 Bit Service Pack 1. I understand (from my Google searches) that other Windows users have experienced similar problems.
The text was updated successfully, but these errors were encountered: