-
Notifications
You must be signed in to change notification settings - Fork 614
Closed
Labels
Description
Code that reproduces:
require 'rspec'
require 'elasticsearch'
describe 'bug in es transport' do
it 'should not stack overflow' do
hosts = %w(1.2.3.4 5.6.7.8 9.10.11.12)
client = Elasticsearch::Client.new hosts: hosts, retry_on_failure: true, reload_connections: true, reload_on_failure: true, transport_options: {request: {timeout: 10}}
client.cluster.health
end
endstack trace:
SystemStackError: stack level too deep
/Users/cmeyer/.rvm/gems/ruby-2.2.2/gems/faraday-0.9.1/lib/faraday/connection.rb:406:in `build_exclusive_url'
/Users/cmeyer/.rvm/gems/ruby-2.2.2/gems/faraday-0.9.1/lib/faraday/rack_builder.rb:191:in `build_env'
/Users/cmeyer/.rvm/gems/ruby-2.2.2/gems/faraday-0.9.1/lib/faraday/rack_builder.rb:139:in `build_response'
/Users/cmeyer/.rvm/gems/ruby-2.2.2/gems/faraday-0.9.1/lib/faraday/connection.rb:377:in `run_request'
/Users/cmeyer/.rvm/gems/ruby-2.2.2/gems/elasticsearch-transport-1.0.9/lib/elasticsearch/transport/transport/http/faraday.rb:21:in `block in perform_request'
/Users/cmeyer/.rvm/gems/ruby-2.2.2/gems/elasticsearch-transport-1.0.9/lib/elasticsearch/transport/transport/base.rb:187:in `call'
/Users/cmeyer/.rvm/gems/ruby-2.2.2/gems/elasticsearch-transport-1.0.9/lib/elasticsearch/transport/transport/base.rb:187:in `perform_request'
/Users/cmeyer/.rvm/gems/ruby-2.2.2/gems/elasticsearch-transport-1.0.9/lib/elasticsearch/transport/transport/http/faraday.rb:20:in `perform_request'
/Users/cmeyer/.rvm/gems/ruby-2.2.2/gems/elasticsearch-transport-1.0.9/lib/elasticsearch/transport/transport/sniffer.rb:31:in `block in hosts'
/Users/cmeyer/.rvm/gems/ruby-2.2.2/gems/elasticsearch-transport-1.0.9/lib/elasticsearch/transport/transport/sniffer.rb:30:in `hosts'
/Users/cmeyer/.rvm/gems/ruby-2.2.2/gems/elasticsearch-transport-1.0.9/lib/elasticsearch/transport/transport/base.rb:71:in `reload_connections!'
/Users/cmeyer/.rvm/gems/ruby-2.2.2/gems/elasticsearch-transport-1.0.9/lib/elasticsearch/transport/transport/base.rb:198:in `rescue in perform_request'
/Users/cmeyer/.rvm/gems/ruby-2.2.2/gems/elasticsearch-transport-1.0.9/lib/elasticsearch/transport/transport/base.rb:177:in `perform_request'
/Users/cmeyer/.rvm/gems/ruby-2.2.2/gems/elasticsearch-transport-1.0.9/lib/elasticsearch/transport/transport/http/faraday.rb:20:in `perform_request'
/Users/cmeyer/.rvm/gems/ruby-2.2.2/gems/elasticsearch-transport-1.0.9/lib/elasticsearch/transport/transport/sniffer.rb:31:in `block in hosts'
/Users/cmeyer/.rvm/gems/ruby-2.2.2/gems/elasticsearch-transport-1.0.9/lib/elasticsearch/transport/transport/sniffer.rb:30:in `hosts'
/Users/cmeyer/.rvm/gems/ruby-2.2.2/gems/elasticsearch-transport-1.0.9/lib/elasticsearch/transport/transport/base.rb:71:in `reload_connections!'
/Users/cmeyer/.rvm/gems/ruby-2.2.2/gems/elasticsearch-transport-1.0.9/lib/elasticsearch/transport/transport/base.rb:198:in `rescue in perform_request'
/Users/cmeyer/.rvm/gems/ruby-2.2.2/gems/elasticsearch-transport-1.0.9/lib/elasticsearch/transport/transport/base.rb:177:in `perform_request'
/Users/cmeyer/.rvm/gems/ruby-2.2.2/gems/elasticsearch-transport-1.0.9/lib/elasticsearch/transport/transport/http/faraday.rb:20:in `perform_request'
/Users/cmeyer/.rvm/gems/ruby-2.2.2/gems/elasticsearch-transport-1.0.9/lib/elasticsearch/transport/transport/sniffer.rb:31:in `block in hosts'
...
...