sabisu-rails icon indicating copy to clipboard operation
sabisu-rails copied to clipboard

EOFError in SabisuRails::ExplorerController#index

Open xAxKx opened this issue 10 years ago • 22 comments

Full trace:

/usr/local/rvm/rubies/ruby-2.0.0-p481/lib/ruby/2.0.0/net/protocol.rb:153:in read_nonblock' /usr/local/rvm/rubies/ruby-2.0.0-p481/lib/ruby/2.0.0/net/protocol.rb:153:inrbuf_fill' /usr/local/rvm/rubies/ruby-2.0.0-p481/lib/ruby/2.0.0/net/protocol.rb:134:in readuntil' /usr/local/rvm/rubies/ruby-2.0.0-p481/lib/ruby/2.0.0/net/protocol.rb:144:inreadline' /usr/local/rvm/rubies/ruby-2.0.0-p481/lib/ruby/2.0.0/net/http/response.rb:39:in read_status_line' /usr/local/rvm/rubies/ruby-2.0.0-p481/lib/ruby/2.0.0/net/http/response.rb:28:inread_new' /usr/local/rvm/rubies/ruby-2.0.0-p481/lib/ruby/2.0.0/net/http.rb:1406:in block in transport_request' /usr/local/rvm/rubies/ruby-2.0.0-p481/lib/ruby/2.0.0/net/http.rb:1403:incatch' /usr/local/rvm/rubies/ruby-2.0.0-p481/lib/ruby/2.0.0/net/http.rb:1403:in transport_request' /usr/local/rvm/rubies/ruby-2.0.0-p481/lib/ruby/2.0.0/net/http.rb:1376:inrequest' /usr/local/rvm/rubies/ruby-2.0.0-p481/lib/ruby/2.0.0/net/http.rb:1369:in block in request' /usr/local/rvm/rubies/ruby-2.0.0-p481/lib/ruby/2.0.0/net/http.rb:852:instart' /usr/local/rvm/rubies/ruby-2.0.0-p481/lib/ruby/2.0.0/net/http.rb:1367:in request' httparty (0.13.1) lib/httparty/request.rb:93:inperform' httparty (0.13.1) lib/httparty.rb:521:in perform_request' httparty (0.13.1) lib/httparty.rb:457:inget' /usr/local/rvm/gems/ruby-2.0.0-p481@market_place_api/bundler/gems/sabisu-rails-de6340971e70/lib/sabisu_rails/request.rb:17:in response' /usr/local/rvm/gems/ruby-2.0.0-p481@market_place_api/bundler/gems/sabisu-rails-de6340971e70/app/controllers/sabisu_rails/explorer_controller.rb:7:inindex' actionpack (4.1.4) lib/action_controller/metal/implicit_render.rb:4:in send_action' actionpack (4.1.4) lib/abstract_controller/base.rb:189:inprocess_action' actionpack (4.1.4) lib/action_controller/metal/rendering.rb:10:in process_action' actionpack (4.1.4) lib/abstract_controller/callbacks.rb:20:inblock in process_action' activesupport (4.1.4) lib/active_support/callbacks.rb:113:in call' activesupport (4.1.4) lib/active_support/callbacks.rb:113:incall' activesupport (4.1.4) lib/active_support/callbacks.rb:166:in block in halting' activesupport (4.1.4) lib/active_support/callbacks.rb:229:incall' activesupport (4.1.4) lib/active_support/callbacks.rb:229:in block in halting' activesupport (4.1.4) lib/active_support/callbacks.rb:166:incall' activesupport (4.1.4) lib/active_support/callbacks.rb:166:in block in halting' activesupport (4.1.4) lib/active_support/callbacks.rb:86:incall' activesupport (4.1.4) lib/active_support/callbacks.rb:86:in run_callbacks' actionpack (4.1.4) lib/abstract_controller/callbacks.rb:19:inprocess_action' actionpack (4.1.4) lib/action_controller/metal/rescue.rb:29:in process_action' actionpack (4.1.4) lib/action_controller/metal/instrumentation.rb:31:inblock in process_action' activesupport (4.1.4) lib/active_support/notifications.rb:159:in block in instrument' activesupport (4.1.4) lib/active_support/notifications/instrumenter.rb:20:ininstrument' activesupport (4.1.4) lib/active_support/notifications.rb:159:in instrument' actionpack (4.1.4) lib/action_controller/metal/instrumentation.rb:30:inprocess_action' actionpack (4.1.4) lib/action_controller/metal/params_wrapper.rb:250:in process_action' activerecord (4.1.4) lib/active_record/railties/controller_runtime.rb:18:inprocess_action' actionpack (4.1.4) lib/abstract_controller/base.rb:136:in process' actionview (4.1.4) lib/action_view/rendering.rb:30:inprocess' actionpack (4.1.4) lib/action_controller/metal.rb:196:in dispatch' actionpack (4.1.4) lib/action_controller/metal/rack_delegation.rb:13:indispatch' actionpack (4.1.4) lib/action_controller/metal.rb:232:in block in action' actionpack (4.1.4) lib/action_dispatch/routing/route_set.rb:82:incall' actionpack (4.1.4) lib/action_dispatch/routing/route_set.rb:82:in dispatch' actionpack (4.1.4) lib/action_dispatch/routing/route_set.rb:50:incall' actionpack (4.1.4) lib/action_dispatch/journey/router.rb:71:in block in call' actionpack (4.1.4) lib/action_dispatch/journey/router.rb:59:ineach' actionpack (4.1.4) lib/action_dispatch/journey/router.rb:59:in call' actionpack (4.1.4) lib/action_dispatch/routing/route_set.rb:678:incall' railties (4.1.4) lib/rails/engine.rb:514:in call' railties (4.1.4) lib/rails/railtie.rb:194:inpublic_send' railties (4.1.4) lib/rails/railtie.rb:194:in method_missing' actionpack (4.1.4) lib/action_dispatch/journey/router.rb:71:inblock in call' actionpack (4.1.4) lib/action_dispatch/journey/router.rb:59:in each' actionpack (4.1.4) lib/action_dispatch/journey/router.rb:59:incall' actionpack (4.1.4) lib/action_dispatch/routing/route_set.rb:678:in call' warden (1.2.3) lib/warden/manager.rb:35:inblock in call' warden (1.2.3) lib/warden/manager.rb:34:in catch' warden (1.2.3) lib/warden/manager.rb:34:incall' rack (1.5.2) lib/rack/etag.rb:23:in call' rack (1.5.2) lib/rack/conditionalget.rb:25:incall' rack (1.5.2) lib/rack/head.rb:11:in call' actionpack (4.1.4) lib/action_dispatch/middleware/params_parser.rb:27:incall' actionpack (4.1.4) lib/action_dispatch/middleware/flash.rb:254:in call' rack (1.5.2) lib/rack/session/abstract/id.rb:225:incontext' rack (1.5.2) lib/rack/session/abstract/id.rb:220:in call' actionpack (4.1.4) lib/action_dispatch/middleware/cookies.rb:560:incall' activerecord (4.1.4) lib/active_record/query_cache.rb:36:in call' activerecord (4.1.4) lib/active_record/connection_adapters/abstract/connection_pool.rb:621:incall' activerecord (4.1.4) lib/active_record/migration.rb:380:in call' actionpack (4.1.4) lib/action_dispatch/middleware/callbacks.rb:29:inblock in call' activesupport (4.1.4) lib/active_support/callbacks.rb:82:in run_callbacks' actionpack (4.1.4) lib/action_dispatch/middleware/callbacks.rb:27:incall' actionpack (4.1.4) lib/action_dispatch/middleware/reloader.rb:73:in call' actionpack (4.1.4) lib/action_dispatch/middleware/remote_ip.rb:76:incall' actionpack (4.1.4) lib/action_dispatch/middleware/debug_exceptions.rb:17:in call' actionpack (4.1.4) lib/action_dispatch/middleware/show_exceptions.rb:30:incall' railties (4.1.4) lib/rails/rack/logger.rb:38:in call_app' railties (4.1.4) lib/rails/rack/logger.rb:20:inblock in call' activesupport (4.1.4) lib/active_support/tagged_logging.rb:68:in block in tagged' activesupport (4.1.4) lib/active_support/tagged_logging.rb:26:intagged' activesupport (4.1.4) lib/active_support/tagged_logging.rb:68:in tagged' railties (4.1.4) lib/rails/rack/logger.rb:20:incall' actionpack (4.1.4) lib/action_dispatch/middleware/request_id.rb:21:in call' rack (1.5.2) lib/rack/methodoverride.rb:21:incall' rack (1.5.2) lib/rack/runtime.rb:17:in call' activesupport (4.1.4) lib/active_support/cache/strategy/local_cache_middleware.rb:26:incall' rack (1.5.2) lib/rack/lock.rb:17:in call' actionpack (4.1.4) lib/action_dispatch/middleware/static.rb:64:incall' rack (1.5.2) lib/rack/sendfile.rb:112:in call' railties (4.1.4) lib/rails/engine.rb:514:incall' railties (4.1.4) lib/rails/application.rb:144:in call' rack (1.5.2) lib/rack/lock.rb:17:incall' rack (1.5.2) lib/rack/content_length.rb:14:in call' rack (1.5.2) lib/rack/handler/webrick.rb:60:inservice' /usr/local/rvm/rubies/ruby-2.0.0-p481/lib/ruby/2.0.0/webrick/httpserver.rb:138:in service' /usr/local/rvm/rubies/ruby-2.0.0-p481/lib/ruby/2.0.0/webrick/httpserver.rb:94:inrun' /usr/local/rvm/rubies/ruby-2.0.0-p481/lib/ruby/2.0.0/webrick/server.rb:295:in `block in start_thread'

xAxKx avatar Jul 23 '14 14:07 xAxKx

Can you explain a little bit further when is this being presented?

kurenn avatar Dec 09 '14 17:12 kurenn

This happened to me also while following http://apionrails.icalialabs.com/ tutorial, any idea why this is happening?

adnanpirota avatar Apr 12 '15 17:04 adnanpirota

I think is something related to simple_form or the way the explorer is being accesed.

Are you running the application to explore on another server?

kurenn avatar Apr 13 '15 16:04 kurenn

I am having this issue also. I'm running Ubuntu Linux. At first I was getting: Errno::ECONNREFUSED in SabisuRails::ExplorerController#index Connection refused - connect(2) for "api.marketplaceapi.dev" port 80

Went to terminal and entered: prax start Now I'm getting: EOFError in SabisuRails::ExplorerController#index end of file reached

Any help if possible?

Cortlandd avatar May 31 '15 09:05 Cortlandd

same issue here , I'm using

rails s -b 0.0.0.0 -p 8080 

with vagrant (forwarded port 8080 => 3000 )

rails -v
Rails 4.2.3

ruby -v
ruby 2.2.1p85 (2015-02-26 revision 49769) [i686-linux]

Mparaiso avatar Jul 02 '15 03:07 Mparaiso

Are you running the instance on a multithread server? something like Puma or Unicorn?

kurenn avatar Aug 10 '15 16:08 kurenn

nope, i'm following rails api book( great book btw ) , but running the default server (webrick I guess ). That's the only thing that didn't work.

Mparaiso avatar Aug 10 '15 18:08 Mparaiso

Are you using pow? or prax?

kurenn avatar Aug 19 '15 15:08 kurenn

I also have same problem I use pow. and mac os may be,I think the problem is localhost port is 3000, but default port 80.

env ruby : ruby 2.2.1p85 (2015-02-26 revision 49769) [x86_64-darwin15] Rails 4.2.4

img https://gyazo.com/8aca0a31573006d989cfc946687f7808

Errno::ECONNREFUSED in SabisuRails::ExplorerController#index Connection refused - connect(2) for nil port 80

Extracted source (around line #879): D "opening connection to #{conn_address}:#{conn_port}..." s = Timeout.timeout(@open_timeout, Net::OpenTimeout) { TCPSocket.open(conn_address, conn_port, @local_host, @local_port) } s.setsockopt(Socket::IPPROTO_TCP, Socket::TCP_NODELAY, 1) D "opened"

Application Trace | Framework Trace | Full Trace /Users/y_kim/.rvm/rubies/ruby-2.2.1/lib/ruby/2.2.0/net/http.rb:879:in initialize' /Users/y_kim/.rvm/rubies/ruby-2.2.1/lib/ruby/2.2.0/net/http.rb:879:inopen' /Users/y_kim/.rvm/rubies/ruby-2.2.1/lib/ruby/2.2.0/net/http.rb:879:in block in connect' /Users/y_kim/.rvm/rubies/ruby-2.2.1/lib/ruby/2.2.0/timeout.rb:74:intimeout' /Users/y_kim/.rvm/rubies/ruby-2.2.1/lib/ruby/2.2.0/net/http.rb:878:in connect' /Users/y_kim/.rvm/rubies/ruby-2.2.1/lib/ruby/2.2.0/net/http.rb:863:indo_start' /Users/y_kim/.rvm/rubies/ruby-2.2.1/lib/ruby/2.2.0/net/http.rb:852:in start' /Users/y_kim/.rvm/rubies/ruby-2.2.1/lib/ruby/2.2.0/net/http.rb:1375:inrequest' httparty (0.13.7) lib/httparty/request.rb:117:in perform' httparty (0.13.7) lib/httparty.rb:545:inperform_request' httparty (0.13.7) lib/httparty.rb:476:in get' /Users/y_kim/.rvm/gems/ruby-2.2.1/bundler/gems/sabisu-rails-af7499e87912/lib/sabisu_rails/request.rb:17:inresponse' /Users/y_kim/.rvm/gems/ruby-2.2.1/bundler/gems/sabisu-rails-af7499e87912/app/controllers/sabisu_rails/explorer_controller.rb:7:in index' actionpack (4.2.4) lib/action_controller/metal/implicit_render.rb:4:insend_action' actionpack (4.2.4) lib/abstract_controller/base.rb:198:in `process_action'

ghost avatar Oct 07 '15 06:10 ghost

Are you using a multithread server like puma or unicorn?

kurenn avatar Oct 08 '15 16:10 kurenn

I have linux, recently solved the same problem running

prax start prior to: rails s

ppeusco avatar Oct 13 '15 10:10 ppeusco

@ppeusco 's solution should work, make sure you have a multithread server...

kurenn avatar Oct 13 '15 17:10 kurenn

Having the same issue. It does not actually matter whether I use webrick or puma. As @yongwoonKim mentioned the issue is that Sabisu expects app to run on port 80 when it runs on 3000.

Setup: webrick || puma prax linux

tarasmatsyk avatar Oct 24 '15 18:10 tarasmatsyk

The issue is that a port is not picked up by HTTParty and it starts using the default one which is 80.

new_uri = path.relative? ? options[:uri_adapter].parse("#{base_uri}#{path}") : path.clone

since base_uri is passed as is and path is /users/ (a default resource) we get the error above. I have not found the fix/reasons for the issue so far

an exact place in httparty (httparty/connection_adapter.rb)

port = uri.port || (uri.scheme == 'https' ? 443 : 80)

even if I specify the port in api_base_uri and the right URI is built, net/http.rb cannot establish connection to http://api.marketplace.dev:3000/users/

tarasmatsyk avatar Oct 24 '15 19:10 tarasmatsyk

@yongwoonKim, are you sure you have specified api_base_uri in sabisu_rails.rb config file? My exception looks differently than yours. (yours shows 'nil' instead of host)

Connection refused - connect(2) for "api.marketplaceapi.dev" port 80

tarasmatsyk avatar Oct 25 '15 07:10 tarasmatsyk

@yongwoonKim did you made it work?

kurenn avatar Nov 03 '15 20:11 kurenn

@kurenn yeap, I did it!

https://github.com/kurenn/market_place_api/issues/7

ghost avatar Nov 10 '15 00:11 ghost

I'll close this then!

kurenn avatar Nov 10 '15 03:11 kurenn

@kurenn The issue is still valid for me =(

tarasmatsyk avatar Nov 11 '15 20:11 tarasmatsyk

@tamatsyk what is going on?, sorry about that, I'll reopen!

kurenn avatar Nov 11 '15 21:11 kurenn

@kurenn

Same issue here. Hanging on "http://localhost:3000/sabisu_rails/explorer", then a Net::ReadTimeout in SabisuRails::ExplorerController#index

Following tutorial at http://apionrails.icalialabs.com/ exactly. Made sure the base_uri_path is set and all configurations set.

After the timeout error stack, there are two instances of

Started GET "/api/users/" for 127.0.0.1 at 2016-02-19 15:09:53 -0500

ActionController::RoutingError (No route matches [GET] "/api/users"):
  actionpack (4.2.5.1) lib/action_dispatch/middleware/debug_exceptions.rb:21:in `call'
  web-console (2.3.0) lib/web_console/middleware.rb:28:in `block in call'
  web-console (2.3.0) lib/web_console/middleware.rb:18:in `catch'
  web-console (2.3.0) lib/web_console/middleware.rb:18:in `call'
  actionpack (4.2.5.1) lib/action_dispatch/middleware/show_exceptions.rb:30:in `call'
  railties (4.2.5.1) lib/rails/rack/logger.rb:38:in `call_app'
  railties (4.2.5.1) lib/rails/rack/logger.rb:20:in `block in call'
  activesupport (4.2.5.1) lib/active_support/tagged_logging.rb:68:in `block in tagged'
  activesupport (4.2.5.1) lib/active_support/tagged_logging.rb:26:in `tagged'
  activesupport (4.2.5.1) lib/active_support/tagged_logging.rb:68:in `tagged'
  railties (4.2.5.1) lib/rails/rack/logger.rb:20:in `call'
  actionpack (4.2.5.1) lib/action_dispatch/middleware/request_id.rb:21:in `call'
  rack (1.6.4) lib/rack/methodoverride.rb:22:in `call'
  rack (1.6.4) lib/rack/runtime.rb:18:in `call'
  activesupport (4.2.5.1) lib/active_support/cache/strategy/local_cache_middleware.rb:28:in `call'
  rack (1.6.4) lib/rack/lock.rb:17:in `call'
  actionpack (4.2.5.1) lib/action_dispatch/middleware/static.rb:116:in `call'
  rack (1.6.4) lib/rack/sendfile.rb:113:in `call'
  railties (4.2.5.1) lib/rails/engine.rb:518:in `call'
  railties (4.2.5.1) lib/rails/application.rb:165:in `call'
  rack (1.6.4) lib/rack/urlmap.rb:66:in `block in call'
  rack (1.6.4) lib/rack/urlmap.rb:50:in `each'
  rack (1.6.4) lib/rack/urlmap.rb:50:in `call'
  rack (1.6.4) lib/rack/lock.rb:17:in `call'
  rack (1.6.4) lib/rack/content_length.rb:15:in `call'
  rack (1.6.4) lib/rack/handler/webrick.rb:88:in `service'
  /home/casi/.rbenv/versions/2.2.3/lib/ruby/2.2.0/webrick/httpserver.rb:138:in `service'
  /home/casi/.rbenv/versions/2.2.3/lib/ruby/2.2.0/webrick/httpserver.rb:94:in `run'
  /home/casi/.rbenv/versions/2.2.3/lib/ruby/2.2.0/webrick/server.rb:294:in `block in start_thread'

Tested with both prax and WEBRick, same errors.

casimcdaniels avatar Feb 19 '16 20:02 casimcdaniels

Try using puma or unicorn, or run two different instances of the rails app, one running on the 3000 port and other one on 5000 then you can just run one of them to display sabisu.

Let me know how it goes!

kurenn avatar Feb 12 '17 19:02 kurenn