[Pharo-project] Help with a crash
Hi folks! I am having a crash in Mac OS using Squeak 4.2.2beta1U.app when trying to swap out unactive classes. In the image it appears a windows or something like a console with just a part of the stacktrace. I attach an screenshot. In PharoDebug.log I have nothing. I even tried to run the VM from command line, but nothing is shown in the console.. I opened a MacOS Console and the only thing I see is: "12/29/09 5:54:19 PM Spotlight[217] Invalid kMDItemPath for pharo1.0-10496-rc1dev09.11.5.dbx.changes " So, how can I get the full stacktrace of that ? Thanks Mariano
That's the emergency debugger. It is used when processing an error (writing the error log, opening the debugger, etc) causes another error. From the stack trace you can see that there is something wrong with the PreDebugWindow, an icon seems to be missing. Lukas 2009/12/29 Mariano Martinez Peck <marianopeck@gmail.com>:
Hi folks! I am having a crash in Mac OS using Squeak 4.2.2beta1U.app when trying to swap out unactive classes.
In the image it appears a windows or something like a console with just a part of the stacktrace. I attach an screenshot.
In PharoDebug.log I have nothing. I even tried to run the VM from command line, but nothing is shown in the console..
I opened a MacOS Console and the only thing I see is:
"12/29/09 5:54:19 PM Spotlight[217] Invalid kMDItemPath for pharo1.0-10496-rc1dev09.11.5.dbx.changes "
So, how can I get the full stacktrace of that ?
Thanks
Mariano
_______________________________________________ Pharo-project mailing list Pharo-project@lists.gforge.inria.fr http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
-- Lukas Renggli http://www.lukas-renggli.ch
Mariano, I had a similar problem on Linux a few months ago. It turned out to be my fault, and I am not certain how much a stack trace would have helped, because the problem was in the way I originally built the image, and that lead to ugly side effects in loading specific packages. Details aside, it seems _really_ bad to me for the vm to crash without leaving behind any traces of what happened. Bill ________________________________ From: pharo-project-bounces@lists.gforge.inria.fr [mailto:pharo-project-bounces@lists.gforge.inria.fr] On Behalf Of Mariano Martinez Peck Sent: Tuesday, December 29, 2009 11:59 AM To: Pharo Development Subject: [Pharo-project] Help with a crash Hi folks! I am having a crash in Mac OS using Squeak 4.2.2beta1U.app when trying to swap out unactive classes. In the image it appears a windows or something like a console with just a part of the stacktrace. I attach an screenshot. In PharoDebug.log I have nothing. I even tried to run the VM from command line, but nothing is shown in the console.. I opened a MacOS Console and the only thing I see is: "12/29/09 5:54:19 PM Spotlight[217] Invalid kMDItemPath for pharo1.0-10496-rc1dev09.11.5.dbx.changes " So, how can I get the full stacktrace of that ? Thanks Mariano
lead to ugly side effects in loading specific packages. Details aside, it seems _really_ bad to me for the vm to crash without leaving behind any traces of what happened.
This is not a VM that crashes. In fact everything is still fully functional and running. What Mariano is seeing is the emergency debugger, a very primitive debugger implemented in MorphicUIManager>>onPrimitiveError: used when everything else fails. Lukas -- Lukas Renggli http://www.lukas-renggli.ch
On Tue, Dec 29, 2009 at 6:13 PM, Lukas Renggli <renggli@gmail.com> wrote:
lead to ugly side effects in loading specific packages. Details aside, it seems _really_ bad to me for the vm to crash without leaving behind any traces of what happened.
This is not a VM that crashes. In fact everything is still fully functional and running. What Mariano is seeing is the emergency debugger, a very primitive debugger implemented in MorphicUIManager>>onPrimitiveError: used when everything else fails.
Thanks Lukas for the explanation. Every day I learn something new :) Now I was wondering if we can change the onPrimitiveError: to something like this: onPrimitiveError: aString | context | (String streamContents: [:s | s nextPutAll: '***System error handling failed***'. s cr; nextPutAll: aString. context := thisContext sender sender. 200 timesRepeat: [context == nil ifFalse: [s cr; print: (context := context sender)]]. s cr; nextPutAll: '-------------------------------'. s cr; nextPutAll: 'Type CR to enter an emergency evaluator.'. s cr; nextPutAll: 'Type any other character to restart.']) displayAt: 10 @ 0. [Sensor keyboardPressed] whileFalse. Sensor keyboard = Character cr ifTrue: [Transcripter emergencyEvaluator]. World install "init hands and redisplay" I just changed to 200 timesRepeat instead of 20 so that to have the full stack, or at least, more than 20 lines and also the point of displayAt: 10 @ 0. because in my case I couldn't see the first letters of the windows. If you are ok, I can put a slice in the inbox and create the issue. Thanks Mariano
Lukas
-- Lukas Renggli http://www.lukas-renggli.ch
_______________________________________________ Pharo-project mailing list Pharo-project@lists.gforge.inria.fr http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
I don't think that's a good idea. If you print so many stack frames, then the emergency evaluator is out of screen. Lukas 2009/12/29 Mariano Martinez Peck <marianopeck@gmail.com>:
On Tue, Dec 29, 2009 at 6:13 PM, Lukas Renggli <renggli@gmail.com> wrote:
lead to ugly side effects in loading specific packages. Details aside, it seems _really_ bad to me for the vm to crash without leaving behind any traces of what happened.
This is not a VM that crashes. In fact everything is still fully functional and running. What Mariano is seeing is the emergency debugger, a very primitive debugger implemented in MorphicUIManager>>onPrimitiveError: used when everything else fails.
Thanks Lukas for the explanation. Every day I learn something new :)
Now I was wondering if we can change the onPrimitiveError:Â to something like this:
onPrimitiveError: aString
                         | context |
   (String       streamContents:          [:s |          s nextPutAll: '***System error handling failed***'.          s cr; nextPutAll: aString.          context := thisContext sender sender.          200 timesRepeat: [context == nil ifFalse: [s cr; print: (context := context sender)]].          s cr; nextPutAll: '-------------------------------'.          s cr; nextPutAll: 'Type CR to enter an emergency evaluator.'.          s cr; nextPutAll: 'Type any other character to restart.'])       displayAt: 10 @ 0.    [Sensor keyboardPressed] whileFalse.    Sensor keyboard = Character cr ifTrue: [Transcripter emergencyEvaluator].
   World install "init hands and redisplay"
I just changed to 200 timesRepeat instead of 20 so that to have the full stack, or at least, more than 20 lines and also the point of   displayAt: 10 @ 0.  because in my case I couldn't see the first letters of the windows.
If you are ok, I can put a slice in the inbox and create the issue.
Thanks
Mariano
Lukas
-- Lukas Renggli http://www.lukas-renggli.ch
_______________________________________________ Pharo-project mailing list Pharo-project@lists.gforge.inria.fr http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
_______________________________________________ Pharo-project mailing list Pharo-project@lists.gforge.inria.fr http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
-- Lukas Renggli http://www.lukas-renggli.ch
On Tue, Dec 29, 2009 at 6:54 PM, Lukas Renggli <renggli@gmail.com> wrote:
I don't think that's a good idea. If you print so many stack frames, then the emergency evaluator is out of screen.
Yes, that's true :( We cannot have vertical scroll ? I just ask with my total ignorance, but I guess that not.
Lukas
2009/12/29 Mariano Martinez Peck <marianopeck@gmail.com>:
On Tue, Dec 29, 2009 at 6:13 PM, Lukas Renggli <renggli@gmail.com>
wrote:
lead to ugly side effects in loading specific packages. Details
aside,
it seems _really_ bad to me for the vm to crash without leaving behind any traces of what happened.
This is not a VM that crashes. In fact everything is still fully functional and running. What Mariano is seeing is the emergency debugger, a very primitive debugger implemented in MorphicUIManager>>onPrimitiveError: used when everything else fails.
Thanks Lukas for the explanation. Every day I learn something new :)
Now I was wondering if we can change the onPrimitiveError: to something like this:
onPrimitiveError: aString
| context |
(String streamContents: [:s | s nextPutAll: '***System error handling failed***'. s cr; nextPutAll: aString. context := thisContext sender sender. 200 timesRepeat: [context == nil ifFalse: [s cr; print: (context := context sender)]]. s cr; nextPutAll: '-------------------------------'. s cr; nextPutAll: 'Type CR to enter an emergency evaluator.'. s cr; nextPutAll: 'Type any other character to restart.']) displayAt: 10 @ 0. [Sensor keyboardPressed] whileFalse. Sensor keyboard = Character cr ifTrue: [Transcripter emergencyEvaluator].
World install "init hands and redisplay"
I just changed to 200 timesRepeat instead of 20 so that to have the full stack, or at least, more than 20 lines and also the point of displayAt: 10 @ 0. because in my case I couldn't see the first letters of the windows.
If you are ok, I can put a slice in the inbox and create the issue.
Thanks
Mariano
Lukas
-- Lukas Renggli http://www.lukas-renggli.ch
_______________________________________________ Pharo-project mailing list Pharo-project@lists.gforge.inria.fr http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
_______________________________________________ Pharo-project mailing list Pharo-project@lists.gforge.inria.fr http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
-- Lukas Renggli http://www.lukas-renggli.ch
_______________________________________________ Pharo-project mailing list Pharo-project@lists.gforge.inria.fr http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
No, the idea of the emergency debugger is that it still works when everything else fails. Lukas 2009/12/30 Mariano Martinez Peck <marianopeck@gmail.com>:
On Tue, Dec 29, 2009 at 6:54 PM, Lukas Renggli <renggli@gmail.com> wrote:
I don't think that's a good idea. If you print so many stack frames, then the emergency evaluator is out of screen.
Yes, that's true :( We cannot have vertical scroll ? I just ask with my total ignorance, but I guess that not.
Lukas
2009/12/29 Mariano Martinez Peck <marianopeck@gmail.com>:
On Tue, Dec 29, 2009 at 6:13 PM, Lukas Renggli <renggli@gmail.com> wrote:
lead to ugly side effects in loading specific packages. Details aside, it seems _really_ bad to me for the vm to crash without leaving behind any traces of what happened.
This is not a VM that crashes. In fact everything is still fully functional and running. What Mariano is seeing is the emergency debugger, a very primitive debugger implemented in MorphicUIManager>>onPrimitiveError: used when everything else fails.
Thanks Lukas for the explanation. Every day I learn something new :)
Now I was wondering if we can change the onPrimitiveError:Â to something like this:
onPrimitiveError: aString
                         | context |
   (String       streamContents:          [:s |          s nextPutAll: '***System error handling failed***'.          s cr; nextPutAll: aString.          context := thisContext sender sender.          200 timesRepeat: [context == nil ifFalse: [s cr; print: (context := context sender)]].          s cr; nextPutAll: '-------------------------------'.          s cr; nextPutAll: 'Type CR to enter an emergency evaluator.'.          s cr; nextPutAll: 'Type any other character to restart.'])       displayAt: 10 @ 0.    [Sensor keyboardPressed] whileFalse.    Sensor keyboard = Character cr ifTrue: [Transcripter emergencyEvaluator].
   World install "init hands and redisplay"
I just changed to 200 timesRepeat instead of 20 so that to have the full stack, or at least, more than 20 lines and also the point of displayAt: 10 @ 0.  because in my case I couldn't see the first letters of the windows.
If you are ok, I can put a slice in the inbox and create the issue.
Thanks
Mariano
Lukas
-- Lukas Renggli http://www.lukas-renggli.ch
_______________________________________________ Pharo-project mailing list Pharo-project@lists.gforge.inria.fr http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
_______________________________________________ Pharo-project mailing list Pharo-project@lists.gforge.inria.fr http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
-- Lukas Renggli http://www.lukas-renggli.ch
_______________________________________________ Pharo-project mailing list Pharo-project@lists.gforge.inria.fr http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
_______________________________________________ Pharo-project mailing list Pharo-project@lists.gforge.inria.fr http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
-- Lukas Renggli http://www.lukas-renggli.ch
Lukas, You are correct, but there vm crashes that are not logged: I hit that courtesy of uninitialized structure sizes with ODBC. The VM died, and left no trace of it. Bill -----Original Message----- From: pharo-project-bounces@lists.gforge.inria.fr [mailto:pharo-project-bounces@lists.gforge.inria.fr] On Behalf Of Lukas Renggli Sent: Tuesday, December 29, 2009 12:14 PM To: Pharo-project@lists.gforge.inria.fr Subject: Re: [Pharo-project] Help with a crash
lead to ugly side effects in loading specific packages. Details aside, it seems _really_ bad to me for the vm to crash without leaving behind any traces of what happened.
This is not a VM that crashes. In fact everything is still fully functional and running. What Mariano is seeing is the emergency debugger, a very primitive debugger implemented in MorphicUIManager>>onPrimitiveError: used when everything else fails. Lukas -- Lukas Renggli http://www.lukas-renggli.ch _______________________________________________ Pharo-project mailing list Pharo-project@lists.gforge.inria.fr http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
participants (3)
-
Lukas Renggli -
Mariano Martinez Peck -
Schwab,Wilhelm K