On Wednesday 16 June 2004 09:33 am, george donnelly wrote:
we run hundreds of zopes on multiple freebsd boxen without OS-related issues, so this is pure FUD. zope and freebsd are good friends, just as long as the stacksize has been upped which is not hard to do. :)
No it is not FUD. At least, not on a FreeBSD fakeroot jail system like I'm using at Imeme. Transferring new product code over from Linux to FreeBSD is a constant headache for me. Particular Zope features like ImageFile seem to be subject to serious failures on this system. I think it has something to do with limited access to file-handles, but I've not been able to localize the problem yet (I'm not so interested in that question, as in how to get my stuff to run on it with the minimum amount of fuss). But there are several things that have to be done differently on FreeBSD in order to work. And what's particularly annoying is that the work-arounds are often wasteful of memory. For example, I use small GIF images to report error messages in VarImage. This should happen rarely, so it would normally be desireable to simply load them from disk as needed. But while this works wonderfully on Linux, it chokes practically every time on FreeBSD. Now I'm not sure why. It might be that only the main thread can get file-handles. Or it may be that there are just not enough of them (I have actually seen Zope not be able to load all of the management icons when the server is heavily loaded). But for whatever reason, FreeBSD requires an expensive work-around, which is to pre-load all the images at class initialization time, so they hang around in memory. Alternatively, I can load these images into the ZODB, but that's not really all that attractive, unless it's something the administrator should have control over. In this case, it's not so bad, because these images are small, but if I had to include a bunch of fine print in them, I'd be in trouble. ;-) The main justification for using FreeBSD, as it was explained to me, was the fakeroot jail system. But I would like to point out that Debian Linux includes a fakeroot jail system package, at least in the Sarge (now testing) release: http://packages.debian.org/testing/admin/jailer I know it's probably less mature on Linux, but I'm certainly looking forward to someone offering this service on a Linux platform (BTW, the sacrifice of using FreeBSD has been well worth it, because Imeme provides good service for the cost, and I think the fakeroot jail is the reason they can do so). At one level, I feel it's good that I go through this particular headache -- if my products manage to run on both Linux and FreeBSD, there's a good chance I've flushed out additional bugs in my work. But I get tired of these "bugs" that shouldn't be bugs, because the system really ought to be able to cope with them (or to put it a different way, there exists a free-software system that does, and there are advantages to doing them the way I initially did, over the way I'm forced to do them to get FreeBSD compatibility). It's also possible that the fakeroot jails would have the same problem on Linux, in which case, I'm misidentifying the source of my headaches. But I don't think either justifies calling it FUD. There are real reasons to be wary of using FreeBSD, especially if you are developing on Linux. You definitely will see problems when you port your code. Cheers, Terry -- Terry Hancock ( hancock at anansispaceworks.com ) Anansi Spaceworks http://www.anansispaceworks.com