about summary refs log tree commit diff
path: root/config/initializers
diff options
context:
space:
mode:
authorTakeshi Umeda <noel.yoshiba@gmail.com>2020-05-23 12:48:14 +0900
committerGitHub <noreply@github.com>2020-05-23 05:48:14 +0200
commit1c434615b30a7ff479213723bb6c99c421916c6e (patch)
treefbc98406f5f8cb73c13851e1908711d0d692ead8 /config/initializers
parente6706d171a3406a40b597dc47fd2dca5b334f2e2 (diff)
Fix workaround for Elasticsearch 7.x (#13828)
Diffstat (limited to 'config/initializers')
-rw-r--r--config/initializers/chewy.rb19
1 files changed, 19 insertions, 0 deletions
diff --git a/config/initializers/chewy.rb b/config/initializers/chewy.rb
index 18d2f18c1..8f54abf77 100644
--- a/config/initializers/chewy.rb
+++ b/config/initializers/chewy.rb
@@ -29,3 +29,22 @@ end
 # Mastodon is run with hidden services enabled, because
 # ElasticSearch is *not* supposed to be accessed through a proxy
 Faraday.ignore_env_proxy = true
+
+# Elasticsearch 7.x workaround
+Elasticsearch::Transport::Client.prepend Module.new {
+  def search(arguments = {})
+    arguments[:rest_total_hits_as_int] = true
+    super arguments
+  end
+}
+Elasticsearch::API::Indices::IndicesClient.prepend Module.new {
+  def create(arguments = {})
+    arguments[:include_type_name] = true
+    super arguments
+  end
+
+  def put_mapping(arguments = {})
+    arguments[:include_type_name] = true
+    super arguments
+  end
+}