Bug 18909 - Enable the maximum zebra records size to be specified per instance
Summary: Enable the maximum zebra records size to be specified per instance
Status: RESOLVED FIXED
Alias: None
Product: Koha
Classification: Unclassified
Component: Searching (show other bugs)
Version: master
Hardware: All All
: P5 - low minor (vote)
Assignee: Kyle M Hall
QA Contact: Tomás Cohen Arazi
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2017-07-07 13:50 UTC by Kyle M Hall
Modified: 2019-02-04 12:38 UTC (History)
8 users (show)

See Also:
Change sponsored?: ---
Patch complexity: ---
Who signed the patch off:
Text to go in the release notes:
Version(s) released in:


Attachments
Bug 18909 - Enable the maximum zebra records size to be specified per instance (2.17 KB, patch)
2017-07-07 13:52 UTC, Kyle M Hall
Details | Diff | Splinter Review
Bug 18909 - Enable the maximum zebra records size to be specified per instance (2.87 KB, patch)
2018-03-06 18:30 UTC, Kyle M Hall
Details | Diff | Splinter Review
Bug 18909: Enable the maximum zebra records size to be specified per instance (3.46 KB, patch)
2019-01-22 15:02 UTC, Tomás Cohen Arazi
Details | Diff | Splinter Review
Bug 18909: Enable the maximum zebra records size to be specified per instance (3.48 KB, patch)
2019-01-24 11:44 UTC, Hugo Agud
Details | Diff | Splinter Review

Note You need to log in before you can comment on or make changes to this bug.
Description Kyle M Hall 2017-07-07 13:50:07 UTC
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.
Comment 1 Kyle M Hall 2017-07-07 13:52:45 UTC
Created attachment 64915 [details] [review]
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:
1) Apply this patch
2) Build a Debian package
3) Specify a zebra_max_record_size of 2048 in your koha_conf.xml
4) Index a record greater than 1 MB but smaller than 2 MB
5) Note that it is searchable!
Comment 2 Kyle M Hall 2018-03-06 18:30:24 UTC
Created attachment 72493 [details] [review]
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:
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!
Comment 3 Tomás Cohen Arazi 2019-01-22 15:02:36 UTC
Created attachment 84284 [details] [review]
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>
Comment 4 Hugo Agud 2019-01-24 11:44:55 UTC
Created attachment 84348 [details] [review]
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>


 Current status: Signed Off
Comment 5 Nick Clemens 2019-01-25 17:59:14 UTC
Awesome work all!

Pushed to master for 19.05
Comment 6 Martin Renvoize 2019-01-31 16:40:46 UTC
Pushed to 18.11.x for 18.11.03
Comment 7 Lucas Gass 2019-02-01 22:18:23 UTC
pushed to 18.05.x for 18.05.09
Comment 8 Fridolin SOMERS 2019-02-04 12:38:12 UTC
I prefer not to change the configuration in 17.11.x since its oldoldstable