Bug 28492

Summary: Hyphen in branchcode gives wrong search results
Product: Koha Reporter: Caroline Cyr La Rose <caroline.cyr-la-rose>
Component: SearchingAssignee: Bugs List <koha-bugs>
Status: CLOSED WONTFIX QA Contact: Testopia <testopia>
Severity: enhancement    
Priority: P5 - low Keywords: Manual
Version: Main   
Hardware: All   
OS: All   
Change sponsored?: --- Patch complexity: ---
Documentation contact: Caroline Cyr La Rose Documentation submission: https://gitlab.com/koha-community/koha-manual/-/merge_requests/626 https://gitlab.com/koha-community/koha-manual/-/merge_requests/627
Text to go in the release notes:
Version(s) released in:

Description Caroline Cyr La Rose 2021-05-31 20:43:10 UTC
A client noticed that when limiting by branch, some search results were wrong and after a bit of digging, I found that it happens when the branchcode contains a hyphen.

I was able to recreate the situation as follows:
1) Go to Administration > Libraries and add the libraries
  - Fairfield (branchcode FFL) -- if you have the default database, this library should already exist
  - Fairfield North (branchcode FFL-N)
  - Fairfield South (branchcode FFLS)

2) Add an item to record A with holding branch FFL-N

3) Add an item to record B with holding branch FFLS

4) reindex if necessary

5) In Advanced search, search for record A and limit to Fairfield North library -- record is in the results - OK

6) In Advanced search, search for record A and limit to Fairfield library 
-- record is in the results! - NOT OK

7) In Advanced search, search for record B and limit to Fairfield South library -- record is in the results - OK

8) In Advanced search, search for record B and limit  to Fairfield library 
-- record is not in results - OK

As you can see, the search for branchcode FFL-N and for branchcode FFL give the same results. 

The problem was originally found by a client using 18.05.03. I was able to recreate in 20.05.08 and master (21.06.000), always with Zebra. I didn't try with ES because mine is currently broken :(
Comment 1 Katrin Fischer 2021-05-31 21:10:06 UTC
Hi Caroline,
that's a known issue. The search by library and others are keyword searches. hyphens are treated as spaces, so FFL-N is "FFL S" and a search for FFL will find it. Same is true for locations, collections etc.

I don't think changing the hyphen behavior in general would be a good idea as we want that for normal search. Using "ext" (exact field search) was problematic in the past - it didn't work for libraries using ICU. Not sure if it does now.

Safest option might be to avoid hyphens in the codes.
Comment 2 Caroline Cyr La Rose 2021-05-31 21:12:05 UTC
To add in the manual, no hyphens in branchodes, loc, CCODE
Comment 3 Caroline Cyr La Rose 2023-02-16 22:23:37 UTC
Not really fixed, but I added the info in the manual... hopefully bug 28495 will prevent users from making mistakes