Bug 18909: Enable the maximum zebra records size to be specified per instance
authorKyle M Hall <kyle@bywatetsolutions.com>
Tue, 6 Mar 2018 18:29:22 +0000 (13:29 -0500)
committerMartin Renvoize <martin.renvoize@ptfs-europe.com>
Thu, 31 Jan 2019 16:40:20 +0000 (16:40 +0000)
commit35fc9c10032a4b130d9861efb36f112112294e57
treeb37d655c40bfeeafd5c4e8b141d74bd0a69c9172
parentb8527c5057ddac6f956d102efa27ef95cd5d3051
Bug 18909: Enable the maximum zebra records size to be specified per instance

The default for Zebra is to not return results where the record size is
greater than 1045 KB ( 1 MB ). Some libraries need to increase this
ceiling, but it may come at a cost with z39.50 compatibility with other
services. For that reason, we should make this setting configurable on a
per-instance basis.

Test plan for kohadevbox:
1) Apply this patch
2) Run:
   $ reset_all
3) Restart Zebra:
   $ sudo koha-zebra --restart kohadev
4) Check how zebrasrv was called:
   $ ps waux | grep zebrasrv
=> SUCCESS: Looks like
 ... /usr/bin/zebrasrv -v none,fatal,warn -k 1024
5) Edit /etc/koha/sites/kohadev/koha-conf.xml, add:
   <zebra_max_record_size>2048</zebra_max_record_size>
6) Repeat (3) and (4)
=> SUCCESS: Looks like
 ... /usr/bin/zebrasrv -v none,fatal,warn -k 2048
7) Sign off :-D

General test plan:
1) Apply this patch
2) Build a Debian package
3) Specify a zebra_max_record_size of 2048 in your koha_conf.xml
4) Restart zebra
5) Index a record greater than 1 MB but smaller than 2 MB
6) Note that it is searchable!

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-by: Hugo Agud <hagud@orex.es>

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
(cherry picked from commit 8c0c6be7488e0543662e47006ded12e74ae4eb8d)
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
debian/scripts/koha-functions.sh
debian/scripts/koha-zebra
debian/templates/koha-conf-site.xml.in