Hi all, I am trying to update my application to use the newest RedCloth (3.274). To do so, I have to compile it on one machine and then copy it over to the server. This has worked fine in the past, but with the latest RedCloth I'm getting a floating point exception and it crashes. Any advice on how to proceed/debug/figure out what's going wrong? Thanks, Justin
on 03.04.2008 02:50
on 17.04.2008 14:08
Justin, did you get your problem figured out? Is this how you always deploy compiled things? What platform/architecture is the machine you're compiling on and what is the server?
on 17.04.2008 20:58
Hi Jason, No, I did not figure it out. Since it looks like Redcloth is still in flux, I thought maybe it is better to wait. However, I'm still open to suggestions! I'm not really familiar with troubleshooting this kind of problem. I have used the exact same method to get eruby and an older version of SuperRedCloth onto the server. It's shared hosting, so while I can run gcc, I get strange out of memory errors, making compiling on the server not an option. Both the machines are running x86 Linux. The 3.274 version of SuperRedCloth is working fine on the server. Thanks, Justin
on 17.04.2008 22:20
Ooh. Shared hosting. I did that once. :-) Who's the host? We might see if we can get them to compile it for us. They'll certainly want to have RedCloth installed after we release, so perhaps they'd be willing to test it now. Tell me who and I'll email them. Thanks, Jason
on 17.04.2008 23:16
The provider is Site5: www.site5.com
on 18.04.2008 00:58
I'm guessing that large C file Ragel generates is partly the issue here (It's about a Mb in size). I seem to recall someone else a while back saying they had similar errors due to stack space or memory at http://rubyforge.org/pipermail/redcloth-upwards/2008-March/000190.html I know the -O0 patch was supposed to prevent this to some degree. I'm wondering if there is an ability to break down the Ragel generated code over several source files. While I'm not a C expert, I'm sure it would be better in the long run than using -O0, and would make compiling a lot less painful for those with limited memory / CPU and to me using specific compiler flags does feel a tad hacky. I don't know what the memory usage is like on compiling, but I can only think a lot of the people who are using cheapy low end VPS's (Like I used to) would have issues if they only have 96-128Mb and a small swap partition (I've noticed VPS's seem to allocate swap space proportional to RAM, and not everyone will be wise enough to realise it's possible to extend the swap space by using a swap file over a loop-back block device, or cross compile etc) These are just some gut feelings I have at the moment regarding compiling. Like I say though, I'm not an expert with C, so my suggestion probably needs to be taken with a large pinch of salt, not to mention I'm guessing in somewhat what I've said might have crossed your minds too. Jase