Skip to content

Commit

Permalink
Fixed error with more language stemmers and Elasticsearch 6.5
Browse files Browse the repository at this point in the history
  • Loading branch information
ankane committed Dec 17, 2018
1 parent e3706c8 commit e3a55de
Show file tree
Hide file tree
Showing 2 changed files with 14 additions and 5 deletions.
2 changes: 1 addition & 1 deletion CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
## 3.1.3 [unreleased]

- Added `prefix` to `where`
- Fixed error with Japanese stemmer and Elasticsearch 6.5
- Fixed error with language stemmers and Elasticsearch 6.5

## 3.1.2

Expand Down
17 changes: 13 additions & 4 deletions lib/searchkick/index_options.rb
Original file line number Diff line number Diff line change
Expand Up @@ -153,6 +153,8 @@ def index_options
end
end

stem = options[:stem]

case language
when "chinese"
settings[:analysis][:analyzer].merge!(
Expand All @@ -167,7 +169,7 @@ def index_options
}
)

settings[:analysis][:filter].delete(:searchkick_stemmer)
stem = false
when "japanese"
settings[:analysis][:analyzer].merge!(
default_analyzer => {
Expand All @@ -181,7 +183,7 @@ def index_options
}
)

settings[:analysis][:filter].delete(:searchkick_stemmer)
stem = false
when "korean"
settings[:analysis][:analyzer].merge!(
default_analyzer => {
Expand All @@ -194,6 +196,8 @@ def index_options
type: "openkoreantext-analyzer"
}
)

stem = false
when "vietnamese"
settings[:analysis][:analyzer].merge!(
default_analyzer => {
Expand All @@ -206,6 +210,8 @@ def index_options
type: "vi_analyzer"
}
)

stem = false
when "polish", "ukrainian", "smartcn"
settings[:analysis][:analyzer].merge!(
default_analyzer => {
Expand All @@ -218,6 +224,8 @@ def index_options
type: language
}
)

stem = false
end

if Searchkick.env == "test"
Expand All @@ -242,9 +250,10 @@ def index_options
end
end

if options[:stem] == false
if stem == false
settings[:analysis][:filter].delete(:searchkick_stemmer)
settings[:analysis][:analyzer].each do |_, analyzer|
analyzer[:filter].delete("searchkick_stemmer")
analyzer[:filter].delete("searchkick_stemmer") if analyzer[:filter]
end
end

Expand Down

0 comments on commit e3a55de

Please sign in to comment.