This has been reported by a library that uses [A-Z]. for call numbers. Every character in the alphabet can be searched perfectly fine using callnum,ext:[A-Z]. - except for C. After taking a look at the /etc/zebradb/etc/word-phrase-utf.chr those 2 lines are to blame for the problem: 333 map (^c\.) @ 335 map (^C\.) @ I propose to remove them. To test: - catalog a record with an item with callnumber: C. - catalog a record with an item with callnumber: B. - try seaching for the second using callnum,ext:B. (exact field search) - Verify search works. - try searching for the other with callnum,ext:C. - Verify no result. - apply the patch - copy the zebra config file if necessary into the right spot - reindex - repeat searches - both should not bring up the correct record.
Created attachment 40238 [details] [review] Bug 14401: Zebra index configuration doesn't allow exact search for C. 2 lines in the Zebra configuration files prevent an exact search for C., while all other [A-Z]. searches work correctly. After taking a look at the /etc/zebradb/etc/word-phrase-utf.chr those 2 lines cause the problem: map (^c\.) @ map (^C\.) @ I propose to remove them. To test: - Catalog a record with an item with callnumber: C. - Catalog a record with an item with callnumber: B. - Try seaching for the second using callnum,ext:B. (exact field search) - Verify search works. - Try searching for the other with callnum,ext:C. - Verify no result. - Apply the patch - copy the zebra config file if necessary into the right spot - Reindex - Repeat searches - both should not bring up the correct record.
Created attachment 40243 [details] [review] Bug 14401: Zebra index configuration doesn't allow exact search for C. 2 lines in the Zebra configuration files prevent an exact search for C., while all other [A-Z]. searches work correctly. After taking a look at the /etc/zebradb/etc/word-phrase-utf.chr those 2 lines cause the problem: map (^c\.) @ map (^C\.) @ I propose to remove them. To test: - Catalog a record with an item with callnumber: C. - Catalog a record with an item with callnumber: B. - Try seaching for the second using callnum,ext:B. (exact field search) - Verify search works. - Try searching for the other with callnum,ext:C. - Verify no result. - Apply the patch - copy the zebra config file if necessary into the right spot - Reindex - Repeat searches - both should not bring up the correct record. Signed-off-by: Indranil Das Gupta (L2C2 Technologies) <indradg@gmail.com>
Created attachment 40389 [details] [review] [PASSED QA] Bug 14401: Zebra index configuration doesn't allow exact search for C. 2 lines in the Zebra configuration files prevent an exact search for C., while all other [A-Z]. searches work correctly. After taking a look at the /etc/zebradb/etc/word-phrase-utf.chr those 2 lines cause the problem: map (^c\.) @ map (^C\.) @ I propose to remove them. To test: - Catalog a record with an item with callnumber: C. - Catalog a record with an item with callnumber: B. - Try seaching for the second using callnum,ext:B. (exact field search) - Verify search works. - Try searching for the other with callnum,ext:C. - Verify no result. - Apply the patch - copy the zebra config file if necessary into the right spot - Reindex - Repeat searches - both should not bring up the correct record. Signed-off-by: Indranil Das Gupta (L2C2 Technologies) <indradg@gmail.com> Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Patch pushed to master. Thanks Katrin!
Pushed to 3.20.x will be in 3.20.2
Pushed to 3.18.x will be in 3.18.09
Pushed to 3.16.x, will be in 3.16.13