On Fri, 19 Feb 2010 16:25:20 -0500, Jon Hylands jon@huv.com wrote:
I'm getting a weird problem, and its been so many years since I saw this, I'm at a loss as to what to do...
On my robot Brainbot, I have a 2.83 GHz Core 2 Quad with 2 GB RAM and a 32 GB solid state HD. It is running Windows XP Pro.
I'm getting a Low Space Notifier whenever I try and copy text to the clipboard, or when I try and paste. I can do other development things, writing a saving code, and opening browsers and windows with no problems.
Task Manager says Squeak is taking up 37,980 K, and the machine has 1.2 GB of free physical memory.
I'm running the following VM:
Squeak 3.10.6 (release) from Aug 30 2007
And the following image:
Squeak 3.10.2 latest update: #7179
Okay, so this is still bothering me, and I dug a little deeper, and came across something that blew me away...
http://www.huv.com/Clipboard-OutOfMemory.png
Basically, when I do 'copy', the primitive returns a ByteString that is 4 billion bytes long -- 2^32 - 1 to be exact. Clearly that is not really allocated, because even when I have this inspector open, Squeak is still only taking about 37 MB of memory.
However, the method String >> #withSqueakLineEndings is trying to create a new string that is 4 billion bytes long, and that is where I run into the low space warning.
Primitive 141 appears to be causing the issue.
I'm not much of a VM person, so hopefully someone who is can look at that primitive and figure out what case is causing it.
One more thing to note - I'm running Windows in a Remote Desktop, from a Linux machine. To clarify, my development machine is a desktop, running Ubuntu linux. The robot is a mini-itx running Windows XP Pro. I use remote desktop from linux to access the Windows GUI on the robot.
Later, Jon