VM freeze and crash when saving

Florian Minjat florian.minjat at emn.fr
Thu Apr 5 09:03:25 UTC 2007


Hi,
   I have experienced some problems with my production image and VM.
   I use a unixshell server (Linux 2.6.16.13-xenU #1 SMP Sat May 13 
14:18:58 EDT 2006 i686 GNU/Linux).
   My VM is the last one I got using an apt-get install squeakvm :
$ squeakvm -version
3.9-7 #1 Sun Dec 31 00:39:01 CET 2006 gcc 3.3.5
Squeak3.9alpha of 4 July 2005 [latest update: #7021]
Linux sarge 2.6.8-3-686 #1 Tue Dec 5 21:26:38 UTC 2006 i686 GNU/Linux

   My image is built with a Squeak3.9-final-7067 base with some 
up-to-date packages : PreferenceBrowser, Vassili's Regex, Seaside.

   The crash : I use an internal image database. My application has 
two database updates per days. So just before and after the update, I 
save the image, and I save the database using a SmartRefStream to 
create a timestamped file. The application si based on seaside.
   And regularly the image freeze completely (ie seaside website don't 
even respond), or partially (I can browse the site). But i both cases, 
trying to save of the image or save of the bdd just make the image use 
100% of the cpu. No save is possible. An example using top :
28291 squeak      25   0  327m  54m  812 R 99.0 42.4 144:26.61 squeak

   So yesterday I tried to debug the vm using gdb and calling 
printAllStacks. Here is the resulting crash :

(gdb) call printAllStacks()
Program received signal SIGSEGV, Segmentation fault.
0x08062c68 in printAllStacks ()
    at /home/piumarta/squeak/platforms/unix/src/vm/interp.c:20722
20722   in /home/piumarta/squeak/platforms/unix/src/vm/interp.c

   And you can found attached the output of the vm before the crash.
   I can't understand the causes of the crash. It could be linked to 
the memory over 1Go access...
   And as this problem is recurrent of my production environement, I'd 
like to have some ideas on how correct this. Like building my own VM 
using some options ? Or downgrade to the 3.8 VM ?

Florian
-------------- next part --------------
Process
-1512342376 UserInputEvent>transformedBy:
-1512342468 MorphicEventDispatcher>dispatchDefault:with:
-1512342560 MorphicEventDispatcher>dispatchEvent:with:
-1512342668 Morph>processEvent:using:
-1512342912 PasteUpMorph>processEvent:using:
-1512343036 Morph>processEvent:
-1512343128 HandMorph>sendEvent:focus:clear:
-1512343220 HandMorph>sendMouseEvent:
-1512343312 HandMorph>handleEvent:
-1512343432 MouseOverHandler>processMouseOver:
-1512343616 HandMorph>processEvents
-1512343524 [] in WorldState>doOneCycleNowFor:
-1512343708 SequenceableCollection>do:
-1512343800 WorldState>handsDo:
-1512343892 WorldState>doOneCycleNowFor:
-1512343984 WorldState>doOneCycleFor:
-1512344076 PasteUpMorph>doOneCycle
-1532192696 [] in >spawnNewProcess
-1532192512 [] in BlockContext>newProcess



Process
-1526267788 >finalizationProcess
-1526267972 [] in >restartFinalizationProcess
-1526267880 [] in BlockContext>newProcess














Process
-1537801344 >timerInterruptWatcher
-1537801004 [] in >startTimerInterruptWatcher
-1537800912 [] in BlockContext>newProcess


































































Process
-1519028260 InputSensor>userInterruptWatcher
-1519028444 [] in InputSensor>installInterruptWatcher
-1519028352 [] in BlockContext>newProcess

Process
-1512344352 Delay>wait
-1512344260 [] in EventSensor>eventTickler
-1512344444 BlockContext>on:do:
-1519027768 EventSensor>eventTickler
-1519028044 [] in EventSensor>installEventTickler
-1519027860 [] in BlockContext>newProcess



Process
-1519027212 SystemDictionary>lowSpaceWatcher
-1519027120 [] in SystemDictionary>installLowSpaceWatcher
-1519027028 [] in BlockContext>newProcess




































































































Segmentation fault

-1512342376 UserInputEvent>transformedBy:
-1512342468 MorphicEventDispatcher>dispatchDefault:with:
-1512342560 MorphicEventDispatcher>dispatchEvent:with:
-1512342668 Morph>processEvent:using:
-1512342912 PasteUpMorph>processEvent:using:
-1512343036 Morph>processEvent:
-1512343128 HandMorph>sendEvent:focus:clear:
-1512343220 HandMorph>sendMouseEvent:
-1512343312 HandMorph>handleEvent:
-1512343432 MouseOverHandler>processMouseOver:
-1512343616 HandMorph>processEvents
-1512343524 [] in WorldState>doOneCycleNowFor:
-1512343708 SequenceableCollection>do:
-1512343800 WorldState>handsDo:
-1512343892 WorldState>doOneCycleNowFor:
-1512343984 WorldState>doOneCycleFor:
-1512344076 PasteUpMorph>doOneCycle
-1532192696 [] in >spawnNewProcess
-1532192512 [] in BlockContext>newProcess


More information about the Squeak-dev mailing list