https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=41887
Bug ID: 41887
Summary: Booking::store runs clash detection on terminal status
transition causing 500 on checkout
Initiative type: ---
Sponsorship ---
status:
Product: Koha
Version: Main
Hardware: All
OS: All
Status: NEW
Severity: normal
Priority: P5 - low
Component: Circulation
Assignee: [email protected]
Reporter: [email protected]
QA Contact: [email protected]
CC: [email protected], [email protected]
- Booking::store runs item-level and biblio-level clash detection
unconditionally on every call
- During checkout, C4::Circulation sets the booking status to 'completed' and
calls ->store(), which triggers these checks
- Combined with false positives from Biblio::check_booking (e.g. checkouts on
non-bookable sibling items inflating the unavailable count, see Bug XXXXX),
this throws Koha::Exceptions::Booking::Clash resulting in an unhandled 500
error
- Even without false positives, running clash detection on a terminal
transition (completed/cancelled) is unnecessary and should be skipped
Steps to reproduce:
- Have a biblio with two items: one bookable, one not (bookable = 0).
- Create a booking on the bookable item.
- Check out the non-bookable item to a patron.
- Check out the bookable item to the booking patron.
- Expected: Checkout succeeds, booking transitions to completed.
- Actual: 500 internal server error from Koha::Exceptions::Booking::Clash.
--
You are receiving this mail because:
You are the assignee for the bug.
You are watching all bug changes.
_______________________________________________
Koha-bugs mailing list
[email protected]
https://lists.koha-community.org/cgi-bin/mailman/listinfo/koha-bugs
website : http://www.koha-community.org/
git : http://git.koha-community.org/
bugs : http://bugs.koha-community.org/