[squeak-dev] lowSpaceWatcher problems

tim Rowledge tim at rowledge.org
Tue Mar 12 05:52:10 UTC 2013


On 11-03-2013, at 7:48 PM, David T. Lewis <lewis at mail.msen.com> wrote:
> 
> I think that it is also possible, on a unix system, that allowing the
> VM to allocate memory without limit might eventually crash the VM
> with a low space condition as the VM claims more and more virtual
> memory space, gradually leading to swap thrashing and a profoundly
> sluggish image that is unable to schedule anything, including the
> low space watcher process. When you are running Squeak interactively,
> you would notice the sluggish performance and hit the <alt><period>
> interrupt to stop it. But on on a server process, it might just
> bog down and die.


There is, or at least was, a pathological condition that can cause nastiness. It afflicts RISC OS particularly because there is no virtual memory to hide the symptoms under the rug of gradual slowing.

I forget exactly where in the code it is -I'm pretty sure there is a Mantis report on the issue somewhere- but there is a place where memory is simply stolen from the lowspace buffer without any sort of nod to the lowspace mechanism. If anyone wants to look around right now, look for places where the memory expansion call is used and a bit later; consider what happens when there is no more memory to be got. In the GC related code, some space is stolen from remaining room.  I could probably take a quick look for the evidence tomorrow.

tim
--
tim Rowledge; tim at rowledge.org; http://www.rowledge.org/tim
Useful Latin Phrases:- Estne volumen in toga, an solum tibi libet me videre? = Is that a scroll in your toga, or are you just happy to see me?




More information about the Squeak-dev mailing list