On Wed, Jun 13, 2012 at 7:40 AM, David T. Lewis <lewis@mail.msen.com> wrote:

On Wed, Jun 13, 2012 at 04:08:14PM +0200, G?ran Krampe wrote:
>
> Hey!
>
> Ok, so the plot thickens:
>
> If I run this in a "oneclick 1.4" I will get a file write error on 2Gb:
>
> | f b |
> f := StandardFileStream newFileNamed: 'test'.
> b := ByteArray new: 1024*1024*100. "100Mb"
> [30 timesRepeat: [f nextPutAll: b]] ensure: [f close] "3Gb"
>
>
> ...but it worked fine using a self built "standard" VM from squeakvm.org
> (4.4.7.2357)! Same image btw.
>
> Now, does it work with the bleeding edge Cog? Tried r2556 and nope, same
> problem.
>
> So I "guess" it is a Cog thing? I haven't tried building Cog from source.
>
> regards, G?ran

Background on large file support, see especially Bert's summary:

http://forum.world.st/Re-squeak-dev-filesize-reporting-0-for-very-large-files-td4483646.html
http://bugs.squeak.org/view.php?id=7522
http://www.suse.de/~aj/linux_lfs.html

I'm not sure if the Cog VMs are being compiled with the the LFS option, although
I expect that if you compile it yourself with the build options that Bert explains,
then it should start working.

I just committed the necessary changes for my branch.  Will rebuild soon.  Göran, if you're in a hurry build your own?  You'd need to be in http://www.squeakvm.org/svn/squeak/branches/Cog/unixbuild/bld and run ./mvm.
--
best,
Eliot