# Http.get call works, but then fails when using debugger

**URL:** <https://www.ruby-forum.com/t/http-get-call-works-but-then-fails-when-using-debugger/74294>\
**Category:** Ruby\
**Created:** [November 3, 2006, 8:25pm UTC](https://www.ruby-forum.com/t/http-get-call-works-but-then-fails-when-using-debugger/74294 "2006-11-03T20:25:27Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![jjantz](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/j/dfb087/32.png) [@jjantz](https://www.ruby-forum.com/u/jjantz)\
**Post date:** [November 3, 2006, 8:25pm UTC](https://www.ruby-forum.com/t/http-get-call-works-but-then-fails-when-using-debugger/74294/1 "2006-11-03T20:25:27Z")

</div>

Hi,  
Can someone tell me if I have found a bug or am doing something wrong  
using Net::HTTP.get ? If I run the code without the -rdebug flag, then  
it works perfectly. If I use the flag and then simply do a continue,  
then I get the errors shown after the code below. I have stepped  
through the code and shown that it is the get2 call that causes the  
error. Also happens with the get method.

I/m running Ruby version 1.8.5 on both Mac (PowerPC) and Redhat  
Enterprise Linux. Same result on both.

Jeff

#!/usr/bin/ruby

require ‘net/http’

SITE = “[http://campus.acm.org](http://campus.acm.org)”  
PATH = ‘/Public/fmr/’  
USERAGENT = ’ Mozilla/5.0 (Macintosh; U; PPC Mac OS X; en)  
AppleWebKit/418.9 (KHTML, like Gecko) Safari/419.3’  
http = Net::HTTP.new(‘[campus.acm.org](http://campus.acm.org)’,80)  
puts " "  
puts “First Get”  
headers = {  
‘Content-type’ =\> ‘application/x-www-form-urlencoded’,  
‘User-Agent’ =\> USERAGENT,  
‘Keep-Alive’ =\> ‘300’,  
‘Connection’ =\> ‘keep-alive’  
}

resp, data = http.get2(PATH, headers)  
puts 'Code= ’ + resp.code

* * *

spartan[293]ruby -rdebug jtest1.rb  
Debug.rb  
Emacs support available.

jtest1.rb:3:require ‘net/http’  
(rdb:1) c

First Get  
/usr/local/lib/ruby/1.8/net/protocol.rb:133: `end of file reached' (EOFError) from /usr/local/lib/ruby/1.8/timeout.rb:76:in `timeout’  
from /usr/local/lib/ruby/1.8/net/protocol.rb:132:in `rbuf_fill' from /usr/local/lib/ruby/1.8/net/protocol.rb:104:in `read\_all’  
from /usr/local/lib/ruby/1.8/net/http.rb:2217:in `read_body_0' from /usr/local/lib/ruby/1.8/net/http.rb:2170:in `read\_body’  
from /usr/local/lib/ruby/1.8/net/http.rb:2195:in `body' from /usr/local/lib/ruby/1.8/net/http.rb:2134:in `reading\_body’  
from /usr/local/lib/ruby/1.8/net/http.rb:1049:in `request' from /usr/local/lib/ruby/1.8/net/http.rb:1034:in `request’  
from /usr/local/lib/ruby/1.8/net/http.rb:543:in `start' from /usr/local/lib/ruby/1.8/net/http.rb:1032:in `request’  
from /usr/local/lib/ruby/1.8/net/http.rb:945:in `get2’  
from jtest1.rb:17  
/usr/local/lib/ruby/1.8/net/protocol.rb:133: @rbuf \<\<  
@io.sysread(1024)

---

<div class="post-metadata">

**Author:** ![jjantz](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/j/dfb087/32.png) [@jjantz](https://www.ruby-forum.com/u/jjantz)\
**Post date:** [November 7, 2006, 10:59am UTC](https://www.ruby-forum.com/t/http-get-call-works-but-then-fails-when-using-debugger/74294/2 "2006-11-07T10:59:32Z")

</div>

On 11/3/06, Jeff J. [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid) wrote:

> http = Net::HTTP.new(‘[campus.acm.org](http://campus.acm.org)’,80)  
> puts ‘Code= ’ + resp.code  
> /usr/local/lib/ruby/1.8/net/protocol.rb:133: `end of file reached' from /usr/local/lib/ruby/1.8/net/http.rb:543:in `start’  
> from /usr/local/lib/ruby/1.8/net/http.rb:1032:in `request' from /usr/local/lib/ruby/1.8/net/http.rb:945:in `get2’  
> from jtest1.rb:17  
> /usr/local/lib/ruby/1.8/net/protocol.rb:133: @rbuf \<\<  
> @io.sysread(1024)

This is probably normal behaviour. Run your script with -w or -d  
switch and you’ll see all exceptions. The debugger stops on all  
excetions even if they are caught.
