Community
Participate
Working Groups
During an incremental build, I got a dialog that said "null" and nothing else. When I went to the .log, I had the following: Log: Wed May 23 16:07:09 CEST 2001 1 org.eclipse.core.resources 4 Exception in org.eclipse.ui.internal.GlobalBuildAction.run: java.lang.OutOfMemoryError How do we expect an ISV provider to debug his/her code with so litle information? If because of the OutOfMemoryError we were not able to dump the stack trace, then we should not catch it (the VM knows how to show it). Otherwise, we should first report the OutOfMemoryError in the dialog, then we should show the stack trace. NOTES:
PRODUCT VERSION: SDK 0.110
Can we get a fix for this?
We have changed the code that handle exceptions in the event loop. It is doing a better job but OutOfMemory is not always possible to handle. We may not even have memory to do the catch block. It should work better in "99%" of the cases.
What about an option to NOT catch this exception at all? If I check this option, I wouldn't mind letting the VM exit as long as I can see the stack trace.
1) We are trying to avoid options. Too many option makes things dificulty to manage and to reproduce bug reports, etc. 2) I have reproduced two diff cases: i) The user code is allocating big chunks of memory. In this case the stacktrace is shown and it is usefull. ii) When the OutOfMem happens allocating a small object. In this case we do not have memory to run the catch block but the stack trace may not help the user anyway because the place it failed to allocate may not be the same as the one that is allocating to much memory.
Thanks for the explanation Eduardo. I now know that if I don't see the stack trace, it is a case of a VM that was started with too small a heap.