Я получаю эту ошибку для синхронизации больших данных (1 МБ) из одного приложения в приложение rails, а после синхронизации выполняю индексацию эластичного поиска.Ранее я использовал ruby 2.3.3 и rails 4.2.7, он прекрасно работал и с большими данными, но теперь я обновил ruby до 2.5.1 и rails 4.2.10 и выдает ошибку Faraday::ConnectionFailed: read function returned funny value
при индексации больших данных.
Пробовал с перечисленной версией драгоценного камняasticsearch
asticsearch (6.1.0, 2.0.2 )asticsearch-api (6.1.0, 2.0.2 )asticsearch-model (6.0.0, 2.0.1)asticsearch-rails (6.0.0, 2.0.1 )asticsearch-transport (6.1.0, 2.0.2)
Также пробовал с обновлением gem для faraday и faraday_middleware
faraday (0.15.4,0.9.2) faraday_middleware (0.12.2)
Адаптер и версия: gem 'patron', '~> 0.4.18'
Подробная информация о gemfile.lock
elasticsearch (2.0.2)
elasticsearch-api (= 2.0.2)
elasticsearch-transport (= 2.0.2)
elasticsearch-api (2.0.2)
multi_json
elasticsearch-model (2.0.1)
activesupport (> 3)
elasticsearch (~> 2)
hashie
elasticsearch-rails (2.0.1)
elasticsearch-transport (2.0.2)
faraday
multi_json
faraday (0.9.2)
multipart-post (>= 1.2, < 3)
faraday_middleware (0.12.2)
faraday (>= 0.7.4, < 1.0)
googleauth (0.5.1)
faraday (~> 0.9)
oauth2 (1.0.0)
faraday (>= 0.8, < 0.10)
jwt (~> 1.0)
multi_json (~> 1.3)
multi_xml (~> 0.5)
rack (~> 1.2)
omniauth (1.8.1)
hashie (>= 3.4.6, < 3.6.0)
rack (>= 1.6.2, < 3)
omniauth-oauth2 (1.2.0)
faraday (>= 0.8, < 0.10)
multi_json (~> 1.3)
oauth2 (~> 1.0)
omniauth (~> 1.2)
signet (0.7.3)
addressable (~> 2.3)
faraday (~> 0.9)
Также попытался использовать идеи из этого SO вопроса :
Elasticsearch::Model.client = Elasticsearch::Client.new(log: logging, adapter: :patron, url: ENV['ELASTICSEARCH_URL'], retry_on_failure: true, transport_options: {request: {timeout: 250}})
Детализация ошибки:
[Faraday::ConnectionFailed] Cannot connect to {:scheme=>"https", :user=>nil, :password=>nil, :host=>"example.com", :path=>"", :port=>443, :protocol=>"https"} after 4 tries
rake aborted!
Faraday::ConnectionFailed: read function returned funny value
/www/rails/app/models/concerns/searchable.rb:34:in `index_document'
/www/rails/lib/drupal/drupal_changes.rb:21:in `block (2 levels) in process'
/www/rails/lib/drupal/drupal_changes.rb:12:in `block in process'
/www/rails/lib/drupal/drupal_changes.rb:9:in `loop'
/www/rails/lib/drupal/drupal_changes.rb:9:in `process'
/www/rails/lib/tasks/drupal_change_syncronizer.rake:106:in `block (2 levels) in <top (required)>'
/www/rails/lib/tasks/drupal_change_syncronizer.rake:115:in `block (3 levels) in <top (required)>'
/www/rails/lib/tasks/drupal_change_syncronizer.rake:13:in `if_not_syncing'
/www/rails/lib/tasks/drupal_change_syncronizer.rake:112:in `block (2 levels) in <top (required)>'
/opt/rubies/ruby-2.5.1/bin/bundle:30:in `block in <main>'
/opt/rubies/ruby-2.5.1/bin/bundle:22:in `<main>'
Patron::Error: read function returned funny value