2013-09-26 3 views
3

Я получаю прерывистые ошибки при работе с почтовым ящиком MailChimp с консоли Rails.Почему я получаю прерывистые ошибки Excon :: Errors :: SocketError: EOFError (EOFError) с MailChimp?

Вот ошибка:

Excon::Errors::SocketError: EOFError (EOFError) 
    from /Users/me/.rvm/rubies/ruby-1.9.3-p448/lib/ruby/1.9.1/openssl/buffering.rb:246:in `readline' 
    from /Users/me/.rvm/gems/[email protected]/gems/excon-0.26.0/lib/excon/response.rb:39:in `parse' 
    from /Users/me/.rvm/gems/[email protected]/gems/excon-0.26.0/lib/excon/middlewares/response_parser.rb:6:in `response_call' 
    from /Users/me/.rvm/gems/[email protected]/gems/excon-0.26.0/lib/excon/connection.rb:349:in `response' 
    from /Users/me/.rvm/gems/[email protected]/gems/excon-0.26.0/lib/excon/connection.rb:252:in `request' 
    from /Users/me/.rvm/gems/[email protected]/gems/excon-0.26.0/lib/excon/connection.rb:290:in `post' 
    from /Users/me/.rvm/gems/[email protected]/gems/mailchimp-api-2.0.3/lib/mailchimp.rb:40:in `call' 
    from /Users/me/.rvm/gems/[email protected]/gems/mailchimp-api-2.0.3/lib/mailchimp/api.rb:861:in `member_info' 
    from (irb):5 
    from /Users/me/.rvm/gems/[email protected]/gems/railties-3.2.14/lib/rails/commands/console.rb:47:in `start' 
    from /Users/me/.rvm/gems/[email protected]/gems/railties-3.2.14/lib/rails/commands/console.rb:8:in `start' 
    from /Users/me/.rvm/gems/[email protected]/gems/railties-3.2.14/lib/rails/commands.rb:41:in `<top (required)>' 
    from script/rails:6:in `require' 
    from script/rails:6:in `<main>' 
+0

Я столкнулся с этой ошибкой (с мандрилом-апите жемчужиной Mailchimp в) во время работы в Starbucks с ненадежной связью, что перепуталась сетевой стек моего Мака. Помогла перезагрузка; YMMV. –

ответ

8

Я сделал небольшой поиск по Excon::Errors::SocketError: EOFError (EOFError), и я наткнулся на this carrierwave issue, который, кажется, выстраиваются в линию с моим опытом.

Я смог воспроизвести это поведение. Если я позволю своей консоли сидеть там ненадолго, а затем позвоните в API MailChimp, он не будет работать с ошибкой выше. Если я повторю один и тот же вызов, это будет успешным.

Таким образом, проблема, по-видимому, вызвана тем, что выключение сокета за пределы значения keep-alive. К сожалению, я не знаю об исправлении/обходном пути, кроме «не делай этого».

2

Просто для записи, и если кто-то заканчивается здесь: версия 0.44.4 из excon, похоже, исправила эту проблему. Добавить

gem 'excon', '~> 0.44.4' 

на ваш Gemfile и запустить

bundle update excon 
+0

[Проблема на Github] (https://github.com/excon/excon/issues/482) –

Смежные вопросы