I am getting problems with a json request using the rails api gem and webrick.
When i do a index search with GET, i have an error ERROR Errno::ECONNRESET: Connection reset by peer @ io_fillbuf. Below is a full log of the problem.I have been trying to google the io_fillbuf but i can’t seem to find any clear answers to what it is.
In my ApplicationController i have “skip_before_action :verify_authenticity_token” as I am just using rails api for a pure json app.
Started GET "/api/v1/images.json?type=index&more=yes&offset=80" for 169.254.249.61 at 2014-08-21 10:30:15 Processing by Api::V1::ImagesController#index as JSON
Parameters: {"type"=>"index", "more"=>"yes", "offset"=>"80"} index
params type index
images length 20
Completed 200 OK in 97ms (Views: 0.1ms | ActiveRecord: 0.0ms)
[2014-08-21 10:30:15] ERROR Errno::ECONNRESET: Connection reset by peer @ io_fillbuf - fd:19
/Users/user/.rvm/rubies/ruby-2.1.2/lib/ruby/2.1.0/webrick/httpserver.rb:80:in `eof?' /Users/user/.rvm/rubies/ruby-2.1.2/lib/ruby/2.1.0/webrick/httpserver.rb:80:in `run' /Users/user/.rvm/rubies/ruby-2.1.2/lib/ruby/2.1.0/webrick/server.rb:295:in `block in start_thread'
[2014-08-21 10:30:15] ERROR Errno::ECONNRESET: Connection reset by peer @ io_fillbuf - fd:15 /Users/user/.rvm/rubies/ruby-2.1.2/lib/ruby/2.1.0/webrick/httpserver.rb:80:in `eof?' /Users/user/.rvm/rubies/ruby-2.1.2/lib/ruby/2.1.0/webrick/httpserver.rb:80:in `run' /Users/user/.rvm/rubies/ruby-2.1.2/lib/ruby/2.1.0/webrick/server.rb:295:in `block in start_thread'
[2014-08-21 10:30:15] ERROR Errno::ECONNRESET: Connection reset by peer @ io_fillbuf - fd:18 /Users/user/.rvm/rubies/ruby-2.1.2/lib/ruby/2.1.0/webrick/httpserver.rb:80:in `eof?' /Users/user/.rvm/rubies/ruby-2.1.2/lib/ruby/2.1.0/webrick/httpserver.rb:80:in `run' /Users/user/.rvm/rubies/ruby-2.1.2/lib/ruby/2.1.0/webrick/server.rb:295:in `block in start_thread'
[2014-08-21 10:30:15] ERROR Errno::ECONNRESET: Connection reset by peer @ io_fillbuf - fd:15 /Users/user/.rvm/rubies/ruby-2.1.2/lib/ruby/2.1.0/webrick/httpserver.rb:80:in `eof?' /Users/user/.rvm/rubies/ruby-2.1.2/lib/ruby/2.1.0/webrick/httpserver.rb:80:in `run' /Users/user/.rvm/rubies/ruby-2.1.2/lib/ruby/2.1.0/webrick/server.rb:295:in `block in start_thread'
[2014-08-21 10:30:15] ERROR Errno::ECONNRESET: Connection reset by peer @ io_fillbuf - fd:18 /Users/user/.rvm/rubies/ruby-2.1.2/lib/ruby/2.1.0/webrick/httpserver.rb:80:in `eof?' /Users/user/.rvm/rubies/ruby-2.1.2/lib/ruby/2.1.0/webrick/httpserver.rb:80:in `run' /Users/user/.rvm/rubies/ruby-2.1.2/lib/ruby/2.1.0/webrick/server.rb:295:in `block in start_thread'
It is not trying to fetch anything from another server.
It does not happen every time i perform the request. Only once when i was requesting the page.
def index
images = Image.order("id DESC").limit(IMAGES_PER_PAGE+1).offset(offset)
if images.length > IMAGES_PER_PAGE
hasMore = "yes"
images = images.first(IMAGES_PER_PAGE)
offset = offset + IMAGES_PER_PAGE
end
finaljson = {:type => "index", :offset => offset, :iteration => 0, :limit => IMAGES_PER_PAGE, , :images => images}
render :status=>200, :json => finaljson.to_json(:include => :comments)
end