# Timeout::Error mystery

**URL:** <https://www.ruby-forum.com/t/timeout-error-mystery/121578>\
**Category:** Ruby\
**Created:** [November 29, 2007, 1:42am UTC](https://www.ruby-forum.com/t/timeout-error-mystery/121578 "2007-11-29T01:42:53Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![Ruby\_Ronin](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/r/aca169/32.png) [@Ruby\_Ronin](https://www.ruby-forum.com/u/Ruby_Ronin)\
**Post date:** [November 29, 2007, 1:42am UTC](https://www.ruby-forum.com/t/timeout-error-mystery/121578/1 "2007-11-29T01:42:53Z")

</div>

Ruby/programming noob here. I’ve just finished my first real app, but  
it’s  
performance is occassionally plagued by the following error message:

c:/ruby/lib/ruby/1.8/timeout.rb:54:in `rbuf_fill': execution expired (Timeout::Error) from c:/ruby/lib/ruby/1.8/timeout.rb:56:in `timeout’  
from c:/ruby/lib/ruby/1.8/timeout.rb:76:in `timeout' from c:/ruby/lib/ruby/1.8/net/protocol.rb:132:in `rbuf\_fill’  
from c:/ruby/lib/ruby/1.8/net/protocol.rb:116:in `readuntil' from c:/ruby/lib/ruby/1.8/net/protocol.rb:126:in `readline’  
from c:/ruby/lib/ruby/1.8/net/http.rb:2017:in `read_status_line' from c:/ruby/lib/ruby/1.8/net/http.rb:2006:in `read\_new’  
from c:/ruby/lib/ruby/1.8/net/http.rb:1047:in `request’

I did find one proposed solution here (modifying the rbuf\_fill method):  
[Timeout errors using Net::HTTP on Windows - Ruby - Ruby-Forum](http://www.ruby-forum.com/topic/105212) , but it doesn’t seem to work for  
me. These posts also explains why standard error handling won’t work.

Does anyone have another solution?

Thanks a bunch!

---

<div class="post-metadata">

**Author:** ![Ruby\_Ronin](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/r/aca169/32.png) [@Ruby\_Ronin](https://www.ruby-forum.com/u/Ruby_Ronin)\
**Post date:** [November 29, 2007, 1:49am UTC](https://www.ruby-forum.com/t/timeout-error-mystery/121578/2 "2007-11-29T01:49:54Z")

</div>

On Nov 28, 2007, at 16:42 PM, Ruby Ronin wrote:

> ```
> from c:/ruby/lib/ruby/1.8/net/protocol.rb:126:in `readline'
> 
> ```
> 
> Does anyone have another solution?

Timeout::Error is an Interrupt subclass, which is not a StandardError  
subclass. You must rescue Timeout::Error explicitly to handle the  
exception.

---

<div class="post-metadata">

**Author:** ![Ruby\_Ronin](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/r/aca169/32.png) [@Ruby\_Ronin](https://www.ruby-forum.com/u/Ruby_Ronin)\
**Post date:** [December 10, 2007, 7:15am UTC](https://www.ruby-forum.com/t/timeout-error-mystery/121578/3 "2007-12-10T07:15:44Z")

</div>

I didn’t understand what you meant at first. Once I had some time to  
look  
into explicit exception handling I figured it out, and it worked -  
thanks!
