Bug 40740 - Validation for biblioitems in about/system information joins on biblionumber not biblioitemnumber
Summary: Validation for biblioitems in about/system information joins on biblionumber ...
Status: Failed QA
Alias: None
Product: Koha
Classification: Unclassified
Component: About (show other bugs)
Version: Main
Hardware: All All
: P5 - low normal
Assignee: Lisette Scheer
QA Contact: Testopia
URL:
Keywords:
Depends on: 35033
Blocks:
  Show dependency treegraph
 
Reported: 2025-09-02 15:28 UTC by Lisette Scheer
Modified: 2025-09-19 15:39 UTC (History)
2 users (show)

See Also:
GIT URL:
Initiative type: ---
Sponsorship status: ---
Crowdfunding goal: 0
Patch complexity: ---
Documentation contact:
Documentation submission:
Text to go in the release notes:
This patch fixes an issue where the about page warns incorrectly when there are items in both the biblioitems and deletedbiblioitems tables on the same record.
Version(s) released in:
Circulation function:


Attachments
Bug 40740: Validation for biblioitems in about/system information joins on biblionumber not biblioitemnumber (1.51 KB, patch)
2025-09-02 15:36 UTC, Lisette Scheer
Details | Diff | Splinter Review

Note You need to log in before you can comment on or make changes to this bug.
Description Lisette Scheer 2025-09-02 15:28:27 UTC
select bi.biblioitemnumber, dbi.biblioitemnumber from biblioitems bi join deletedbiblioitems dbi on bi.biblionumber=dbi.biblionumber  

Warns if there's items from the same biblio, one not deleted, one is deleted.
Comment 1 Lisette Scheer 2025-09-02 15:36:34 UTC
Created attachment 186056 [details] [review]
Bug 40740: Validation for biblioitems in about/system information joins on biblionumber not biblioitemnumber

This patche fixes the validation for biblioitems to only warn when the biblioitemnumber is in both tables instead of the biblionumber.

To test:
1. Delete an item that has another item on the record.
2. Go to About and select the system configuration tab
3. Observe there is a warning.
4. Run a report select bi.biblioitemnumber, dbi.biblioitemnumber from biblioitems bi join deletedbiblioitems dbi on bi.biblionumber=dbi.biblionumber
5. You'll see the numbers don't match
6. Apply the patch
7. Repeat step 2
8. Observe no warning
9. Repeat step 4
10. Observe no results.
11. Sign off!
Comment 2 David Nind 2025-09-06 03:37:07 UTC
I didn't get a warning on the system information tab.

I deleted one of the items for Effective Perl programming (biblionumber = 139), in the default KTD it has two items.
Comment 3 Brendan Lawlor 2025-09-19 15:39:00 UTC
I also didn't get a warning on the system information tab.

On step 4 when I run the query before applying the patch I get no results too. Is there something missing from the test plan?

I don't see any records in deletedbiblioitems after just deleting an item. I only get  a deletedbiblioitems record after deleting a bib record. When I was testing I found when you delete a bib record only one record is added to deletedbiblioitems that has the same biblioitemnumber as its biblionumber. Is that correct or a different bug?


I was able to reproduce the error after some sql statements to update biblioitems and deletedbiblioitems.
I think we need some suggested steps to reproduce something like this:
1. Delete all items from a bib and delete the bib
2. Take note of biblio and biblioitemnumbers for making an update statement
   select biblionumber, biblioitemnumber from deletedbiblioitems
3. Update a biblioitem record to have a match for example
   update biblioitems set biblionumber=233 biblioitemnumber = 233 where biblionumber = 1;

I applied the patch, but the error didn't go away, until I updated the data again to fix it.