Saving problem on Win98

Andreas Raab Andreas.Raab at gmx.de
Wed Apr 24 14:06:31 UTC 2002


Maarten,

First of all: If you haven't done it yet, 

	MAKE A BACKUP OF YOUR HARD DRIVE IMMEDIATELY!

> Does anybody have any ideas how to solve this or where to 
> look for cues about the cause?

If your disk is not full then the only reason the image write may fail
is because the system call to write the data failed. This means that
most likely your hard drive is starting to fail randomly. Squeak is
special in such that it writes large amounts of data in a single call
which means that your hard disk might fail here while it still works in
other places.

Once you've done your backup I recommend running some HD testing
software and check for any errors on the harddrive. Or even better -
just buy a new one. A HDD which starts failing is a pain in the neck.

Cheers,
  - Andreas

> -----Original Message-----
> From: squeak-dev-admin at lists.squeakfoundation.org 
> [mailto:squeak-dev-admin at lists.squeakfoundation.org] On 
> Behalf Of Maarten Maartensz
> Sent: Wednesday, April 24, 2002 3:40 PM
> To: squeak-dev at lists.squeakfoundation.org
> Subject: Saving problem on Win98
> 
> 
> Hello,
> 
> I've got a strange problem on Win98 when trying to save 
> recent Squeaks in
> all possibilities on the menu. It happens with every image I 
> tried: I can't
> save the image properly anymore, except for the first 64 bytes. The
> SqueakDebug.log I get is each time similar. Here is one:
> 
> --- begin log
> 
> Error: Failed to write image file (disk full?)
> 24 April 2002 3:19:35 pm
> 
> VM: Win32 - Squeak3.1alpha of 28 February 2001 [latest update: #3844]
> Image: Squeak3.2alpha [latest update: #4554]
> 
> SystemDictionary(Object)>>error:
> 	Receiver: a SystemDictionary(lots of globals)
> 	Arguments and temporary variables: 
> 		aString: 	'Failed to write image file 
> (disk full?)'
> 	Receiver's instance variables: 
> 		tally: 	1830
> 		array: 	#(nil #MIDISynth nil #CArrayAccessor 
> #BalloonEngineSimulation
> #ScorePlay...etc...
> 		cachedClassNames: 	nil
> 
> SystemDictionary>>snapshot:andQuit:embedded:
> 	Receiver: a SystemDictionary(lots of globals)
> 	Arguments and temporary variables: 
> 		save: 	true
> 		quit: 	true
> 		embeddedFlag: 	false
> 		resuming: 	nil
> 		msg: 	'----QUIT----#(24 April 2002 3:19:14 pm)'
> 		sourceLink: 	' priorSource: 10445260'
> 		theClass: 	nil
> 	Receiver's instance variables: 
> 		tally: 	1830
> 		array: 	#(nil #MIDISynth nil #CArrayAccessor 
> #BalloonEngineSimulation
> #ScorePlay...etc...
> 		cachedClassNames: 	nil
> 
> SystemDictionary>>snapshot:andQuit:
> 	Receiver: a SystemDictionary(lots of globals)
> 	Arguments and temporary variables: 
> 		save: 	true
> 		quit: 	true
> 	Receiver's instance variables: 
> 		tally: 	1830
> 		array: 	#(nil #MIDISynth nil #CArrayAccessor 
> #BalloonEngineSimulation
> #ScorePlay...etc...
> 		cachedClassNames: 	nil
> 
> TheWorldMenu>>saveAndQuit
> 	Receiver: a TheWorldMenu
> 	Arguments and temporary variables: 
> 
> 	Receiver's instance variables: 
> 		myProject: 	a Project(New Changes)
> 		myWorld: 	a PasteUpMorph(1622) [world]
> 		myHand: 	a HandMorph(3216)
> 
> --- The rest of the stack ---
> TheWorldMenu>>doMenuItem:with:
> [] in MenuItemMorph>>invokeWithEvent:
> BlockContext>>ensure:
> CursorWithMask(Cursor)>>showWhile:
> MenuItemMorph>>invokeWithEvent:
> MenuItemMorph>>mouseUp:
> MenuItemMorph>>handleMouseUp:
> MouseButtonEvent>>sentTo:
> MenuItemMorph(Morph)>>handleEvent:
> MorphicEventDispatcher>>dispatchDefault:with:
> MorphicEventDispatcher>>dispatchEvent:with:
> MenuItemMorph(Morph)>>processEvent:using:
> MorphicEventDispatcher>>dispatchDefault:with:
> MorphicEventDispatcher>>dispatchEvent:with:
> MenuMorph(Morph)>>processEvent:using:
> MenuMorph(Morph)>>processEvent:
> MenuMorph>>handleFocusEvent:
> [] in HandMorph>>sendFocusEvent:to:clear:
> PasteUpMorph>>becomeActiveDuring:
> HandMorph>>sendFocusEvent:to:clear:
> HandMorph>>sendEvent:focus:clear:
> HandMorph>>sendMouseEvent:
> HandMorph>>handleEvent:
> HandMorph>>processEvents
> [] in WorldState>>doOneCycleNowFor:
> Array(SequenceableCollection)>>do:
> WorldState>>handsDo:
> WorldState>>doOneCycleNowFor:
> WorldState>>doOneCycleFor:
> PasteUpMorph>>doOneCycle
> [] in Project class>>spawnNewProcess
> [] in BlockContext>>newProcess
> 
> --- end log
> 
> Comments:
> 
> 1. The disk is NOT full, is properly defragmented, and 
> Windows reports no
> errors on it.
> 2. In many cases I can see a full save of Squeak happen in 
> that an image of
> some 16 MB is first written to the disk (according to 
> Windows) and then
> removed (idem), after which I get the above error.
> 3. It happens when saving with the mouse and saving with the 
> keyboard, and
> also when I disconnect one of these  physically from the 
> computer and save
> with the remaining item. (So it's not likely one of these.)
> 4. This happens the last 48 hours or so, and happened to 
> images and in a
> system that worked quite well the last half year, and with 
> which I don't
> have serious problems otherwise. (I.e. the rest works and I don't get
> error-reports.)
> 5. It probably is mostly a Windows+Squeak-problem rather than a
> Squeak-problem, and also probably has to do with my 
> vanilla-Win98 system.
> 6. It is not a wholly consistent error: Some saves of the 
> image succeeded
> unproblematically, but most don't, for the last 48 hours.
> 7. The other processes running on my Windows are (according 
> to Windows) the
> same as before, when I had no problems.
> 
> Does anybody have any ideas how to solve this or where to 
> look for cues
> about the cause?
> 
> Regards,
> 
> Maarten.
> 
> 
> ------------------------------------------
> Maarten Maartensz. Homepage:
> http://www.xs4all.nl/~maartens/ 
> ------------------------------------------
> 
> 




More information about the Squeak-dev mailing list