heavenstudio / pag_seguro

A Ruby Client to deal with PagSeguro's API
http://heavenstudio.com.br
71 stars 38 forks source link

Connection reset by peer - SSL_connect #18

Closed josuetex closed 10 years ago

josuetex commented 10 years ago

An Errno::ECONNRESET occurred in paginas#notificacao:

Connection reset by peer - SSL_connect /home/ubuntu/.rvm/rubies/ruby-1.9.3-p448/lib/ruby/1.9.1/net/http.rb:800:in `connect'


Request:


Backtrace:

/home/ubuntu/.rvm/rubies/ruby-1.9.3-p448/lib/ruby/1.9.1/net/http.rb:800:in connect' /home/ubuntu/.rvm/rubies/ruby-1.9.3-p448/lib/ruby/1.9.1/net/http.rb:800:inblock in connect' /home/ubuntu/.rvm/rubies/ruby-1.9.3-p448/lib/ruby/1.9.1/timeout.rb:55:in timeout' /home/ubuntu/.rvm/rubies/ruby-1.9.3-p448/lib/ruby/1.9.1/timeout.rb:100:intimeout' /home/ubuntu/.rvm/rubies/ruby-1.9.3-p448/lib/ruby/1.9.1/net/http.rb:800:in connect' /home/ubuntu/.rvm/rubies/ruby-1.9.3-p448/lib/ruby/1.9.1/net/http.rb:756:indo_start' /home/ubuntu/.rvm/rubies/ruby-1.9.3-p448/lib/ruby/1.9.1/net/http.rb:745:in start' rest-client (1.6.7) lib/restclient/request.rb:172:intransmit' rest-client (1.6.7) lib/restclient/request.rb:64:in execute' rest-client (1.6.7) lib/restclient/request.rb:33:inexecute' rest-client (1.6.7) lib/restclient.rb:68:in get' pag_seguro (0.5.5) lib/pag_seguro/notification.rb:14:intransaction_data' pag_seguro (0.5.5) lib/pag_seguro/notification.rb:8:in initialize' app/controllers/paginas_controller.rb:361:innew' app/controllers/paginas_controller.rb:361:in notificacao' actionpack (3.2.12) lib/action_controller/metal/implicit_render.rb:4:insend_action' actionpack (3.2.12) lib/abstract_controller/base.rb:167:in process_action' actionpack (3.2.12) lib/action_controller/metal/rendering.rb:10:inprocess_action' actionpack (3.2.12) lib/abstract_controller/callbacks.rb:18:in block in process_action' activesupport (3.2.12) lib/active_support/callbacks.rb:415:inblock in _run483552989process_action503812398callbacks' activesupport (3.2.12) lib/active_support/callbacks.rb:215:in block in _conditional_callback_around_1664' activesupport (3.2.12) lib/active_support/callbacks.rb:326:inaround' activesupport (3.2.12) lib/active_support/callbacks.rb:310:in _callback_around_109' activesupport (3.2.12) lib/active_support/callbacks.rb:214:in_conditional_callback_around_1664' activesupport (3.2.12) lib/active_support/callbacks.rb:414:in _run__483552989__process_action__503812398__callbacks' activesupport (3.2.12) lib/active_support/callbacks.rb:405:inrun_callback' activesupport (3.2.12) lib/active_support/callbacks.rb:385:in _run_process_action_callbacks' activesupport (3.2.12) lib/active_support/callbacks.rb:81:inrun_callbacks' actionpack (3.2.12) lib/abstract_controller/callbacks.rb:17:in process_action' actionpack (3.2.12) lib/action_controller/metal/rescue.rb:29:inprocess_action' actionpack (3.2.12) lib/action_controller/metal/instrumentation.rb:30:in block in process_action' activesupport (3.2.12) lib/active_support/notifications.rb:123:inblock in instrument' activesupport (3.2.12) lib/active_support/notifications/instrumenter.rb:20:in instrument' activesupport (3.2.12) lib/active_support/notifications.rb:123:ininstrument' actionpack (3.2.12) lib/action_controller/metal/instrumentation.rb:29:in process_action' actionpack (3.2.12) lib/action_controller/metal/params_wrapper.rb:207:inprocess_action' activerecord (3.2.12) lib/active_record/railties/controller_runtime.rb:18:in process_action' actionpack (3.2.12) lib/abstract_controller/base.rb:121:inprocess' actionpack (3.2.12) lib/abstract_controller/rendering.rb:45:in process' actionpack (3.2.12) lib/action_controller/metal.rb:203:indispatch' actionpack (3.2.12) lib/action_controller/metal/rack_delegation.rb:14:in dispatch' actionpack (3.2.12) lib/action_controller/metal.rb:246:inblock in action' actionpack (3.2.12) lib/action_dispatch/routing/route_set.rb:73:in call' actionpack (3.2.12) lib/action_dispatch/routing/route_set.rb:73:indispatch' actionpack (3.2.12) lib/action_dispatch/routing/route_set.rb:36:in call' journey (1.0.4) lib/journey/router.rb:68:inblock in call' journey (1.0.4) lib/journey/router.rb:56:in each' journey (1.0.4) lib/journey/router.rb:56:incall' actionpack (3.2.12) lib/action_dispatch/routing/route_set.rb:601:in call' turnout (0.2.3) lib/rack/turnout.rb:18:incall' exception_notification (3.0.1) lib/exception_notifier.rb:41:in call' warden (1.2.1) lib/warden/manager.rb:35:inblock in call' warden (1.2.1) lib/warden/manager.rb:34:in catch' warden (1.2.1) lib/warden/manager.rb:34:incall' client_side_validations (3.2.5) lib/client_side_validations/middleware.rb:21:in call' actionpack (3.2.12) lib/action_dispatch/middleware/best_standards_support.rb:17:incall' rack (1.4.5) lib/rack/etag.rb:23:in call' rack (1.4.5) lib/rack/conditionalget.rb:35:incall' actionpack (3.2.12) lib/action_dispatch/middleware/head.rb:14:in call' actionpack (3.2.12) lib/action_dispatch/middleware/params_parser.rb:21:incall' actionpack (3.2.12) lib/action_dispatch/middleware/flash.rb:242:in call' rack (1.4.5) lib/rack/session/abstract/id.rb:210:incontext' rack (1.4.5) lib/rack/session/abstract/id.rb:205:in call' actionpack (3.2.12) lib/action_dispatch/middleware/cookies.rb:341:incall' activerecord (3.2.12) lib/active_record/query_cache.rb:64:in call' activerecord (3.2.12) lib/active_record/connection_adapters/abstract/connection_pool.rb:479:incall' actionpack (3.2.12) lib/action_dispatch/middleware/callbacks.rb:28:in block in call' activesupport (3.2.12) lib/active_support/callbacks.rb:405:in_run275226183call542491346callbacks' activesupport (3.2.12) lib/active_support/callbacks.rb:405:in `run_callback' activesupport (3.2.12) lib/active_support/callbacks.rb:385:in_run_call_callbacks' activesupport (3.2.12) lib/active_support/callbacks.rb:81:inrun_callbacks' actionpack (3.2.12) lib/action_dispatch/middleware/callbacks.rb:27:incall' rack (1.4.5) lib/rack/sendfile.rb:102:incall' actionpack (3.2.12) lib/action_dispatch/middleware/remote_ip.rb:31:incall' actionpack (3.2.12) lib/action_dispatch/middleware/debug_exceptions.rb:16:incall' actionpack (3.2.12) lib/action_dispatch/middleware/show_exceptions.rb:56:incall' railties (3.2.12) lib/rails/rack/logger.rb:32:incall_app' railties (3.2.12) lib/rails/rack/logger.rb:16:inblock in call' activesupport (3.2.12) lib/active_support/tagged_logging.rb:22:intagged' railties (3.2.12) lib/rails/rack/logger.rb:16:incall' actionpack (3.2.12) lib/action_dispatch/middleware/request_id.rb:22:incall' rack (1.4.5) lib/rack/methodoverride.rb:21:incall' rack (1.4.5) lib/rack/runtime.rb:17:incall' activesupport (3.2.12) lib/active_support/cache/strategy/local_cache.rb:72:incall' rack (1.4.5) lib/rack/lock.rb:15:incall' rack-cache (1.2) lib/rack/cache/context.rb:136:inforward' rack-cache (1.2) lib/rack/cache/context.rb:143:inpass' rack-cache (1.2) lib/rack/cache/context.rb:155:ininvalidate' rack-cache (1.2) lib/rack/cache/context.rb:71:incall!' rack-cache (1.2) lib/rack/cache/context.rb:51:incall' railties (3.2.12) lib/rails/engine.rb:479:incall' railties (3.2.12) lib/rails/application.rb:223:incall' railties (3.2.12) lib/rails/railtie/configurable.rb:30:inmethod_missing' unicorn (4.6.3) lib/unicorn/http_server.rb:552:inprocess_client' unicorn (4.6.3) lib/unicorn/http_server.rb:632:inworker_loop' unicorn (4.6.3) lib/unicorn/http_server.rb:500:inspawn_missing_workers' unicorn (4.6.3) lib/unicorn/http_server.rb:142:instart' unicorn (4.6.3) bin/unicorn_rails:209:in<top (required)>' /home/ubuntu/.rvm/gems/ruby-1.9.3-p448/bin/unicorn_rails:19:inload' /home/ubuntu/.rvm/gems/ruby-1.9.3-p448/bin/unicorn_rails:19:in<main>' /home/ubuntu/.rvm/gems/ruby-1.9.3-p448/bin/ruby_executable_hooks:15:ineval' /home/ubuntu/.rvm/gems/ruby-1.9.3-p448/bin/ruby_executable_hooks:15:in`

'

josuetex commented 10 years ago

Pessoal,

Defini isso no método transmit da class Request da gem rest-client e o problema foi resolvido. Force a usar a versão 3 do OpenSSL.

net.ssl_version = 'SSLv3'

Depois de ter feito essa gambiarra e colocar as coisas para funcionarem, agora vou ver como arrumo de uma forma mais organizada.

De uma hora para outra o PagSeguro passou a exigir isso.

Valeu!

teonimesic commented 10 years ago

Valeu! Manda um pull request assim que conseguir estruturar o fix!

BrunoAssis commented 10 years ago

Eu fiz um fix pra isso direto na gem pag_seguro, vou gerar o pull request, vejam o que acham, é extremamente simples!

Valeu, abraço!

teonimesic commented 10 years ago

nenhuma nova mensagem sobre o problema, então vou considerá-lo como concluído com o último commit.