Обкладинка нотатки: [Fix] Heroku / SearchBox addon - помилка ідексації "The client is unable to verify that the server is Elasticsearch"

[Fix] Heroku / SearchBox addon - помилка ідексації "The client is unable to verify that the server is Elasticsearch"

При налаштуванні аддону пошуку SearchBox на Heroku сталась помилка під час запуску індексації з консолі.
Loading production environment (Rails 7.0.4.3)
irb(main):001:0> Document.__elasticsearch__.create_index! force: true
The client is unable to verify that the server is Elasticsearch. Some functionality may not be compatible if the server is running an unsupported product.
/app/vendor/bundle/ruby/3.2.0/gems/elasticsearch-8.17.1/lib/elasticsearch.rb:103:in `verify_elasticsearch’:ssupport this unknown product. (Elasticsearch::UnsupportedProductError)
Встановленні були ліби останніх версій (8):
gem 'elasticsearch-model'
gem 'elasticsearch-rails'
Офіційна документація каже:
Ensure you are using client version of 7 if you get error The client noticed that the server is not a supported distribution of Elasticsearch while connecting to your endpoint.
Але локнути версії elasticsearch-model та elasticsearch-rails на 7 не вийде. вони залежуть від elasticsearch 8 аб 7.17 (яка нам теж не підходить)
irb(main):001:0> Topic.__elasticsearch__.create_index! force: true
/app/vendor/bundle/ruby/3.2.0/gems/elasticsearch-7.17.11/lib/elasticsearch.rb:86:in `verify_with_version_or_header': The client noticed that the server is not a supported distribution of Elasticsearch. (Elasticsearch::UnsupportedProductError)
Тож найкращий варіант це додати elasticsearch до Gemfile та локнути його на потрібну нам 7 версію.
gem 'elasticsearch', '7.0.0'
gem 'elasticsearch-model', '7.0.0'
gem 'elasticsearch-rails', '7.0.0'
Але краще розглянути альтернативні аддони на Heroku, типу Bonsai. Які використовують останні версії бібліотек з потрібними патчами. Безпека понад усе.
Категорії: Програмування

🔗 Цитувати допис: "[Fix] Heroku / SearchBox addon - помилка ідексації "The client is unable to verify that the server is Elasticsearch" "

Якщо ви хочете процитувати цей допис у своїй роботі, статті, блозі, використовуйте наведену нижче інформацію.

Розгорнути деталі


🙌 Підтримати блог @memecode

Ви можете поширити цей допис у соцмережах, чим допоможете платформі цейво розвиватись (* ^ ω ^)

📝 Більше публікацій:
Обкладинка нотатки: [Фікс] Factory not registered: "user" (KeyError) (FactoryBot / Rails 7)
Обкладинка нотатки: Що таке PORO в Ruby?
Обкладинка нотатки: Чим відрізняються spec_helper.rb і rails_helper.rb у RSpec?
Обкладинка нотатки: Що потрібно знати, щоб побудувати успішну кар'єру на фрілансі в IT
Обкладинка нотатки: Віртуальний хмарний сервер: що це таке та в чому його особливість
Дисклеймер

Інформація на сайті tseivo.com є суб'єктивною та відображає особисті погляди та досвід авторів та авторок блогів.

Використовуйте цей ресурс як одне з декількох джерел інформації під час своїх досліджень та прийняття рішень. Завжди застосовуйте критичне мислення. Людина сама несе відповідальність за свої рішення та дії.