[Mongrel] Input/output error on linux

Bob Hutchison hutch at recursive.ca
Thu Jun 15 07:18:38 EDT 2006


More on this problem. Maybe a even a clue??

I restarted the server just before I sent the last message (Jun 12,  
2006, at 9:48 AM). The difference was that I redirected stderr to a  
file (you had mentioned stdout and stderr issues). Things were  
running fine until between 17:04 and 17:12 EDT yesterday.

The error this time was really different, so maybe not related at  
all. It was getting name errors like:

    NameError (undefined method `options_of' for class `Module')

but for all kinds of different methods and classes.

Looking in the stderr file it looks as though there was a HUP signal  
caught. But no timestamp. I'm guessing it happened sometime between  
17:04 and 17:12.

Now, the specific errors I've been getting are different than those  
I've been complaining about. Is it possible that previously the HUP  
signal handling actually worked (mostly) but left the IO system in  


On Jun 12, 2006, at 9:48 AM, Bob Hutchison wrote:

> On Jun 12, 2006, at 9:31 AM, Zed Shaw wrote:
>> On Mon, 2006-06-12 at 09:14 -0400, Bob Hutchison wrote:
>>>>> Has anyone seen this before? Any suggestions? Is there something
>>>>> useful to check in Rails or Mongrel?
>>>> Are you seeing these errors usually after midnight and do you  
>>>> have log
>>>> rotation enabled for any of the log files?  I've found log rotation
>>>> causes many problems.
>>> I don't have log rotation enabled. And there doesn't appear to be  
>>> any
>>> time of day involvement either.
>> You know there's no "write" in that help file anywhere,
> Yeah I know :-) I don't know what to think of that. Maybe something  
> is trapping and then re-throwing the exception?
> In other cases, when I've checked there had been a write.
>> and even if
>> there were it's being written to a StringIO internally so you  
>> wouldn't
>> get a write error.
> StringIO throws IOErrors for a number of reasons (I just looked at  
> the C code). So, your comments below are looking very interesting.
>>   The only possible places to get write errors are:
>>  1) MySQL -- See the e-mail today about mysql timeouts.
> I don't use a conventional database (and if any I/O were to happen  
> with the DB I use I would know about it since it log the fact if  
> legal, or throw its own exception otherwise). The log it uses is  
> the standard log (where I got the stack trace from so that should  
> be okay).
>>  2) $stderr,$stdout -- rhtml *LOVES* to write crap to these, but  
>> Mongrel
>> catches these and redirects to StringIO as well.
> This is interesting. stderr and stdout have probably been detached.  
> I'll look into this for sure.
>>  3) Files -- Make sure you're not dumping to a file that's then  
>> removed
>> on accident.  Although this is weird.
> I don't think this is happening. Everything is pretty uniform and  
> so if even one page is working this probably isn't happening.
> Thanks,
> Bob
>> -- 
>> Zed A. Shaw
>> http://www.zedshaw.com/
>> http://mongrel.rubyforge.org/
>> _______________________________________________
>> Mongrel-users mailing list
>> Mongrel-users at rubyforge.org
>> http://rubyforge.org/mailman/listinfo/mongrel-users
> ----
> Bob Hutchison                  -- blogs at <http://www.recursive.ca/ 
> hutch/>
> Recursive Design Inc.          -- <http://www.recursive.ca/>
> Raconteur                      -- <http://www.raconteur.info/>
> xampl for Ruby                 -- <http://rubyforge.org/projects/ 
> xampl/>

Bob Hutchison                  -- blogs at <http://www.recursive.ca/ 
Recursive Design Inc.          -- <http://www.recursive.ca/>
Raconteur                      -- <http://www.raconteur.info/>
xampl for Ruby                 -- <http://rubyforge.org/projects/xampl/>

More information about the Mongrel-users mailing list