{"action":"closed","issue":{"url":"https://api.github.com/repos/excon/excon/issues/440","labels_url":"https://api.github.com/repos/excon/excon/issues/440/labels{/name}","comments_url":"https://api.github.com/repos/excon/excon/issues/440/comments","events_url":"https://api.github.com/repos/excon/excon/issues/440/events","html_url":"https://github.com/excon/excon/issues/440","id":48392797,"number":440,"title":"Deadlocks with SSL hanging in opening socket","user":{"login":"hendricius","id":816859,"avatar_url":"https://avatars.githubusercontent.com/u/816859?v=3","gravatar_id":"","url":"https://api.github.com/users/hendricius","html_url":"https://github.com/hendricius","followers_url":"https://api.github.com/users/hendricius/followers","following_url":"https://api.github.com/users/hendricius/following{/other_user}","gists_url":"https://api.github.com/users/hendricius/gists{/gist_id}","starred_url":"https://api.github.com/users/hendricius/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/hendricius/subscriptions","organizations_url":"https://api.github.com/users/hendricius/orgs","repos_url":"https://api.github.com/users/hendricius/repos","events_url":"https://api.github.com/users/hendricius/events{/privacy}","received_events_url":"https://api.github.com/users/hendricius/received_events","type":"User","site_admin":false},"labels":[],"state":"closed","locked":false,"assignee":null,"milestone":null,"comments":11,"created_at":"2014-11-11T15:00:02Z","updated_at":"2015-04-16T14:39:50Z","closed_at":"2015-04-16T14:39:50Z","body":"Hi everybody!\r\n\r\nThanks for the awesome gem. We are having an issue with Sidekiq and Excon. We are running everything in a multi threaded environment. Perhaps you have a idea what could be the issue?\r\n\r\nSymptoms:\r\n- All sidekiq workers stop.\r\n- When checking I see that most workers are hanging at exactly that location in the code (below)\r\n- We had similar problems with Ruby default `http` that's why we switched to Excon.\r\n\r\nDoes anyone have a clue what I could change?\r\n\r\nThanks!\r\n\r\n```\r\n/home/deployer/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/excon-0.39.6/lib/excon/socket.rb:166:in `connect'\r\n/home/deployer/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/excon-0.39.6/lib/excon/ssl_socket.rb:140:in `connect'\r\n/home/deployer/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/excon-0.39.6/lib/excon/socket.rb:28:in `initialize'\r\n/home/deployer/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/excon-0.39.6/lib/excon/ssl_socket.rb:9:in `initialize'\r\n/home/deployer/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/excon-0.39.6/lib/excon/connection.rb:375:in `new'\r\n/home/deployer/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/excon-0.39.6/lib/excon/connection.rb:375:in `socket'\r\n/home/deployer/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/excon-0.39.6/lib/excon/connection.rb:105:in `request_call'\r\n/home/deployer/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/excon-0.39.6/lib/excon/middlewares/mock.rb:47:in `request_call'\r\n/home/deployer/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/excon-0.39.6/lib/excon/middlewares/instrumentor.rb:22:in `request_call'\r\n/home/deployer/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/excon-0.39.6/lib/excon/middlewares/base.rb:15:in `request_call'\r\n/home/deployer/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/excon-0.39.6/lib/excon/middlewares/base.rb:15:in `request_call'\r\n/home/deployer/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/excon-0.39.6/lib/excon/middlewares/base.rb:15:in `request_call'\r\n/home/deployer/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/excon-0.39.6/lib/excon/connection.rb:230:in `request'\r\n/home/deployer/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/faraday-0.9.0/lib/faraday/adapter/excon.rb:54:in `call'\r\n/home/deployer/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/faraday-0.9.0/lib/faraday/request/url_encoded.rb:15:in `call'\r\n/home/deployer/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/signet-0.5.1/lib/signet/oauth_2/client.rb:933:in `fetch_access_token'\r\n/home/deployer/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/signet-0.5.1/lib/signet/oauth_2/client.rb:956:in `fetch_access_token!'\r\n/home/deployer/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/signet-0.5.1/lib/signet/oauth_2/client.rb:971:in `refresh!'\r\n/home/deployer/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/google-ads-common-0.9.5/lib/ads_common/auth/oauth2_handler.rb:91:in `refresh_token!'\r\n/home/deployer/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/google-ads-common-0.9.5/lib/ads_common/auth/oauth2_handler.rb:83:in `get_token'\r\n/home/deployer/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/google-ads-common-0.9.5/lib/ads_common/auth/oauth2_handler.rb:75:in `auth_string'\r\n/home/deployer/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/google-ads-common-0.9.5/lib/ads_common/savon_headers/oauth_header_handler.rb:45:in `generate_headers'\r\n/home/deployer/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/google-ads-common-0.9.5/lib/ads_common/savon_headers/base_header_handler.rb:75:in `prepare_request'\r\n/home/deployer/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/google-ads-common-0.9.5/lib/ads_common/savon_service.rb:103:in `block in execute_soap_request'\r\n/home/deployer/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/savon-1.2.0/lib/savon/client.rb:129:in `yield_objects'\r\n/home/deployer/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/savon-1.2.0/lib/savon/client.rb:122:in `process'\r\n/home/deployer/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/savon-1.2.0/lib/savon/client.rb:84:in `block in request'\r\n/home/deployer/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/savon-1.2.0/lib/savon/soap/request_builder.rb:56:in `call'\r\n/home/deployer/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/savon-1.2.0/lib/savon/soap/request_builder.rb:56:in `request'\r\n/home/deployer/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/savon-1.2.0/lib/savon/client.rb:86:in `request'\r\n/home/deployer/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/google-ads-common-0.9.5/lib/ads_common/savon_service.rb:101:in `execute_soap_request'\r\n/home/deployer/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/google-ads-common-0.9.5/lib/ads_common/savon_service.rb:80:in `execute_action'\r\n/home/deployer/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/google-adwords-api-0.13.1/lib/adwords_api/v201406/campaign_service.rb:25:in `mutate'\r\n```"}}