Mantis - Squeak
Viewing Issue Advanced Details
371 VM minor sometimes 10-13-04 23:21 10-27-04 15:36
mikevdg  
 
normal  
closed  
fixed  
none    
none  
0000371: Squeak freezes on runaway recursion.
Squeak (3.7) becomes unresponsive on runaway recursion. Alt-. does little. On 3.7, the low space watcher does not appear.

I have filed in 22434 - [bug][FIX] stack overflow crashes Squeak. (one-line fix attached).
on a 3.7 image. no change.

On 3.8, the low space watcher does appear and allows the user to stop Squeak crashing. However, it is still not possible to stop the runaway recursion until the low space watcher appears.
I did the following:

Make a class with a method:
freezeUp
   ^ self freezeUp.
and invoke it.

mikevdg@Nebuchadnezzar:~/dpon$ squeak -version
3.6-3 #1 Sat Oct 9 16:10:17 NZDT 2004 gcc 2.95.4
Squeak3.6 of '6 October 2003' [latest update: #5429]
Linux Nebuchadnezzar 2.4.22-x1 #1 SMP Wed Nov 19 21:35:11 EST 2003 i686 GNU/Linux
default plugin location: /usr/local/lib/squeak/3.6-3/*.so

I have tried it on 3.7 and 3.8 with all updates loaded.


related to 0007655new  A mother for user interupt bugs and problems 

Notes
(0000369)
laza   
10-13-04 23:51   
This does not seem to be related to infinite recursion, as the following can't be interrupted by ALT-. in 3.8a(6297) too.

1e8 timesRepeat: []

In 3.7 stable it is no problem to break out of the loop with ALT-.
(0000371)
MarcusDenker   
10-14-04 00:33   
I think there is a fix:

"Change Set: LowSpaceWatcherFix-dtl
Date: 22 May 2004
Author: David T. Lewis

The low space watcher is interrupted in the context of the wrong process when the eventTickler process (or other high priority process) is running. This prevents low space detection from functioning properly.

This is a one line fix to Project>>interruptName: that corrects the problem.
"
update 6293 in 3.8a-unstable
(0000372)
laza   
10-14-04 01:00   
No, I don't think this is the problem, because I was testing this in an image (6297) where this fix is in place.

I don't know why, but the EventTicklerProcess does not seem to be running.
Things behave normal again after you do the following in a Workspace.

   Sensor installEventTickler

Again in a 3.8a(6297) image
(0000374)
ned   
10-14-04 02:09   
The event tickler is restarted every time you save the image.

The VM has had a fix for not checking enough for some time.

I have tested this with the 6293 fix and with the latest Unix VM (3.7b5 or so), and I can break out of the loop successfully.
(0000540)
MarcusDenker   
10-27-04 15:36   
fixed