Bugzilla – Attachment 155629 Details for
Bug 34678
Concurrent changes to the holds can fail due to primary key constraints
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Help
|
New Account
|
Log In
[x]
|
Forgot Password
Login:
[x]
[patch]
Bug 34678: Allow new entries to overwrite hold_fill_targets
Bug-34678-Allow-new-entries-to-overwrite-holdfillt.patch (text/plain), 1.66 KB, created by
Emily Lamancusa (emlam)
on 2023-09-14 18:47:22 UTC
(
hide
)
Description:
Bug 34678: Allow new entries to overwrite hold_fill_targets
Filename:
MIME Type:
Creator:
Emily Lamancusa (emlam)
Created:
2023-09-14 18:47:22 UTC
Size:
1.66 KB
patch
obsolete
>From 2b586aa4e9623d4961479be13abd3c583a443e90 Mon Sep 17 00:00:00 2001 >From: Nick Clemens <nick@bywatersolutions.com> >Date: Wed, 13 Sep 2023 17:03:32 +0000 >Subject: [PATCH] Bug 34678: Allow new entries to overwrite hold_fill_targets > >When using background jobs, there is a possibility of a race condition where two jobs will be updating the holds queue for the same biblio. We should try to minimize those cases (see bug 34596) > >In the meantime though, we should prevent jobs possibly dying, and allow the most recent update to succeed. > >There is a possibility two updates wil assign different items to the same reserve, and that a reserve could end up in the queue twice, however, whichever one is filled first will delete both entries. as filling the hold deletes by reserve id (see bug 24359) > >To test: >1 - prove -v t/db_dependent/Reserves.t >2 - It fails >3 - Apply patch >4 - t/db_dependent/Reserves.t >5 - It succeeds! > >Signed-off-by: Emily Lamancusa <emily.lamancusa@montgomerycountymd.gov> >--- > C4/HoldsQueue.pm | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > >diff --git a/C4/HoldsQueue.pm b/C4/HoldsQueue.pm >index 4b811627eb..adcceea23a 100644 >--- a/C4/HoldsQueue.pm >+++ b/C4/HoldsQueue.pm >@@ -776,7 +776,7 @@ sub AddToHoldTargetMap { > my $dbh = C4::Context->dbh; > > my $insert_sql = q( >- INSERT INTO hold_fill_targets (borrowernumber, biblionumber, itemnumber, source_branchcode, item_level_request, reserve_id) >+ REPLACE INTO hold_fill_targets (borrowernumber, biblionumber, itemnumber, source_branchcode, item_level_request, reserve_id) > VALUES (?, ?, ?, ?, ?, ?) > ); > my $sth_insert = $dbh->prepare($insert_sql); >-- >2.34.1
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
|
Splinter Review
Attachments on
bug 34678
:
155594
|
155595
|
155628
|
155629
|
157913
|
157914
|
157950
|
157951
|
157970
|
157971