Created attachment 160241 [details] [review] Bug 35641: Reduce DB lookups when sending a list of barcodes to inventory This patch does three things: 1 - Removes a specific query for withdrawn status of each item scanned - we can use the withdrawn field 2 - Removes a specific query for checkouts on each item scanned - we can use the onloan field a - additionally we don't need to fetch the checkout as we check it in to the homebranch, this is likely incorrect - we should use the current branch, but I preserve behavior for now 3 - Fetches the items ahead of time and builds a hash based on barcode, reduces DB lookups, may raise memory usage To test: 1 - Checkout some items 2 - Withdraw some items 3 - Generate a lsit of barcodes including some checked out items and some withdrawn items 4 - Enter that list of barcodes into inventory tool 5 - Note your results 6 - Apply patch 7 - Issue the items again 8 - Repeat inventory 9 - Confirm results are the same as before patch
Created attachment 160262 [details] [review] Bug 35641: Reduce DB lookups when sending a list of barcodes to inventory This patch does three things: 1 - Removes a specific query for withdrawn status of each item scanned - we can use the withdrawn field 2 - Removes a specific query for checkouts on each item scanned - we can use the onloan field a - additionally we don't need to fetch the checkout as we check it in to the homebranch, this is likely incorrect - we should use the current branch, but I preserve behavior for now 3 - Fetches the items ahead of time and builds a hash based on barcode, reduces DB lookups, may raise memory usage To test: 1 - Checkout some items 2 - Withdraw some items 3 - Generate a lsit of barcodes including some checked out items and some withdrawn items 4 - Enter that list of barcodes into inventory tool 5 - Note your results 6 - Apply patch 7 - Issue the items again 8 - Repeat inventory 9 - Confirm results are the same as before patch Signed-off-by: Andrew Fuerste-Henry <andrewfh@dubcolib.org>
Created attachment 160983 [details] [review] Bug 35641: Reduce DB lookups when sending a list of barcodes to inventory This patch does three things: 1 - Removes a specific query for withdrawn status of each item scanned - we can use the withdrawn field 2 - Removes a specific query for checkouts on each item scanned - we can use the onloan field a - additionally we don't need to fetch the checkout as we check it in to the homebranch, this is likely incorrect - we should use the current branch, but I preserve behavior for now 3 - Fetches the items ahead of time and builds a hash based on barcode, reduces DB lookups, may raise memory usage To test: 1 - Checkout some items 2 - Withdraw some items 3 - Generate a lsit of barcodes including some checked out items and some withdrawn items 4 - Enter that list of barcodes into inventory tool 5 - Note your results 6 - Apply patch 7 - Issue the items again 8 - Repeat inventory 9 - Confirm results are the same as before patch Signed-off-by: Andrew Fuerste-Henry <andrewfh@dubcolib.org> Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Pushed for 24.05! Well done everyone, thank you!
Pushed to 23.11.x for 23.11.02
Backported to 23.05.x for upcoming 23.05.09.