Bug 33353: Add compatibility with Search::Elasticsearch 8.0
For some reasons, with Search::Elasticsearch 8.0 JSON::true is interpreted as 1 and Elasticsearch will always respond that it found "at least 1 record". Something like this: { total => { value => 1, relation => 'gte' } } Replacing JSON::true by \1 works with every version of Search::Elasticsearch I tested (6.80, 7.717, 8.0) Also worth noting: Search::Elasticsearch will stop being supported by Elastic https://github.com/elastic/elasticsearch-perl/issues/220 We might need to find an alternative for future versions of Elasticsearch Signed-off-by: Victor Grousset/tuxayo <victor@tuxayo.net> Signed-off-by: Philip Orr <philip.orr@lmscloud.de> Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
This commit is contained in:
parent
24aab6b9c5
commit
8194419144
1 changed files with 2 additions and 2 deletions
|
@ -94,7 +94,7 @@ sub search {
|
|||
my $results = eval {
|
||||
$elasticsearch->search(
|
||||
index => $self->index_name,
|
||||
track_total_hits => JSON::true,
|
||||
track_total_hits => \1,
|
||||
body => $query
|
||||
);
|
||||
};
|
||||
|
@ -124,7 +124,7 @@ sub count {
|
|||
# and just return number of hits
|
||||
my $result = $elasticsearch->search(
|
||||
index => $self->index_name,
|
||||
track_total_hits => JSON::true,
|
||||
track_total_hits => \1,
|
||||
body => $query
|
||||
);
|
||||
|
||||
|
|
Loading…
Reference in a new issue