Bug 31614: Adds a koha-conf.xml config to set Zebra connection timeout

This patch adds <zebra_connection_timeout>30</zebra_connection_timeout>
to the koha-conf.xml file.

Sometimes, a Zebra search might take longer than 30 seconds. If it does,
Koha will say that 0 records have been found. While slow searching
is not desirable, it's more desirable to get the result set regardless.

Test plan:
0. Apply patch
1. Add <zebra_connection_timeout>.1</zebra_connection_timeout> to
your relevant koha-conf.xml file (e.g. /etc/koha/sites/kohadev/koha-conf.xml)
2. echo 'flush_all' | nc -q 1 memcached 11211
3. koha-plack --restart kohadev
4. Go to http://localhost:8081/cgi-bin/koha/catalogue/search.pl?q=test
5. Note that no results are returned
6. Change zebra_connection_timeout to 30
7. echo 'flush_all' | nc -q 1 memcached 11211
8. koha-plack --restart kohadev
9a. Go to http://localhost:8081/cgi-bin/koha/catalogue/search.pl?q=test
9b. Note that 3 results are returned
10. Remove zebra_connection_timeout from koha-conf.xml
11. echo 'flush_all' | nc -q 1 memcached 11211
12. koha-plack --restart kohadev
13a. Go to http://localhost:8081/cgi-bin/koha/catalogue/search.pl?q=test
13b. Note that 3 results are returned
14. Celebrate

Signed-off-by: David Nind <david@davidnind.com>

Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
This commit is contained in:
David Cook 2022-09-23 03:21:08 +00:00 committed by Tomas Cohen Arazi
parent 744dd370ce
commit fdb5275407
No known key found for this signature in database
GPG Key ID: 0A272EA1B2F3C15F
3 changed files with 4 additions and 0 deletions

View File

@ -567,6 +567,8 @@ sub _new_Zconn {
$o->option(preferredRecordSyntax => $syntax);
$o->option(elementSetName => $elementSetName) if $elementSetName;
$o->option(databaseName => _common_config($server, 'config') || 'biblios');
my $timeout = C4::Context->config('zebra_connection_timeout') || 30;
$o->option(timeout => $timeout);
# create a new connection object
$Zconn= create ZOOM::Connection($o);

View File

@ -291,6 +291,7 @@ __END_SRU_PUBLICSERVER__
<lockdir>/var/lock/koha/__KOHASITE__</lockdir>
<use_zebra_facets>1</use_zebra_facets>
<zebra_max_record_size>1024</zebra_max_record_size>
<zebra_connection_timeout>30</zebra_connection_timeout>
<log4perl_conf>__KOHA_CONF_DIR__/log4perl.conf</log4perl_conf>
<!-- Uncomment/edit next setting if you want to adjust zebra log levels.
Default is: none,fatal,warn.

View File

@ -108,6 +108,7 @@
<lockdir>__LOCK_DIR__</lockdir>
<use_zebra_facets>1</use_zebra_facets>
<zebra_max_record_size>1024</zebra_max_record_size>
<zebra_connection_timeout>30</zebra_connection_timeout>
<log4perl_conf>__KOHA_CONF_DIR__/log4perl.conf</log4perl_conf>
<!-- Uncomment/edit next setting if you want to adjust zebra log levels.
Default is: none,fatal,warn.