View | Details | Raw Unified | Return to bug 28610
Collapse All | Expand All

(-)a/Koha/SearchEngine/Elasticsearch/Search.pm (-5 / +16 lines)
Lines 51-56 use Koha::Exceptions::Elasticsearch; Link Here
51
use MARC::Record;
51
use MARC::Record;
52
use MARC::File::XML;
52
use MARC::File::XML;
53
use MIME::Base64 qw( decode_base64 );
53
use MIME::Base64 qw( decode_base64 );
54
use JSON;
55
use version;
54
56
55
Koha::SearchEngine::Elasticsearch::Search->mk_accessors(qw( store ));
57
Koha::SearchEngine::Elasticsearch::Search->mk_accessors(qw( store ));
56
58
Lines 90-104 sub search { Link Here
90
        $query->{from} = $page * $query->{size};
92
        $query->{from} = $page * $query->{size};
91
    }
93
    }
92
    my $elasticsearch = $self->get_elasticsearch();
94
    my $elasticsearch = $self->get_elasticsearch();
95
    my %es_search = (
96
        index => $self->index_name,
97
        body => $query
98
    );
99
    if (version->parse($self->{es_version}) >= version->parse('7.0.0')) {
100
        $es_search{'track_total_hits'} = JSON::true;
101
    }
93
    my $results = eval {
102
    my $results = eval {
94
        $elasticsearch->search(
103
        $elasticsearch->search(%es_search);
95
            index => $self->index_name,
96
            body => $query
97
        );
98
    };
104
    };
99
    if ($@) {
105
    if ($@) {
100
        die $self->process_error($@);
106
        die $self->process_error($@);
101
    }
107
    }
108
    if (ref $results->{hits}->{total} eq 'HASH') {
109
        $results->{hits}->{total} = $results->{hits}->{total}->{value};
110
    }
102
    return $results;
111
    return $results;
103
}
112
}
104
113
Lines 122-127 sub count { Link Here
122
        body => $query
131
        body => $query
123
    );
132
    );
124
133
134
    if (ref $result->{hits}->{total} eq 'HASH') {
135
        return $result->{hits}->{total}->{value};
136
    }
125
    return $result->{hits}->{total};
137
    return $result->{hits}->{total};
126
}
138
}
127
139
128
- 

Return to bug 28610