Koha-clms/acqui
Julian Maurice f017560b9d Bug 35921: Improve perfs of acqui-home.pl when there are many budgets
When there are a lot of budgets with the same owner, most of the time of
acqui-home.pl is spent loading the same patron over and over.

This patch makes sure each borrower is loaded only once.

Test plan:
0. Do not apply the patch yet
1. Create a thousand budgets with the following command (make sure the
   budget_owner_id is an existing borrowernumber):
       perl -MKoha::Database -e '
           my $schema = Koha::Database->schema;
           my $period = $schema->resultset("Aqbudgetperiod")->create({
               budget_period_startdate => "2000-01-01",
               budget_period_enddate => "2999-12-31"
           });
           $schema->resultset("Aqbudget")->create({
               budget_owner_id => 1,
               budget_period_id => $period->id
           }) for (1..1000)
       '
2. Measure the time it takes to load acqui/acqui-home.pl (do it several
   times and keep the average time)
3. Apply the patch
4. Repeat step 2

Signed-off-by: Pedro Amorim <pedro.amorim@ptfs-europe.com>
Signed-off-by: Victor Grousset/tuxayo <victor@tuxayo.net>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
(cherry picked from commit 24b33936a5)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
(cherry picked from commit b37e510eb8)
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
2024-05-13 14:32:50 +00:00
..
acqui-home.pl Bug 35921: Improve perfs of acqui-home.pl when there are many budgets 2024-05-13 14:32:50 +00:00
addorder.pl Bug 11844: Use additional fields for order lines 2023-05-16 12:58:38 +02:00
addorderiso2709.pl Bug 35892: Populate order price using GetMarcPrice if no price specified 2024-03-19 19:44:12 +00:00
ajax-getauthvaluedropbox.pl Bug 17600: Standardize our EXPORT_OK 2021-07-16 08:58:47 +02:00
basket.pl Bug 15348: Add estimated delivery date field to individual orders 2022-09-16 10:36:53 -03:00
basketgroup.pl Bug 31257: Add a new English 1 page layout to export basketgroup 2022-10-11 10:44:10 -03:00
basketheader.pl Bug 34509: Use select2 to load vendors on basket creation 2023-08-29 11:43:05 -10:00
booksellers.pl Bug 33103: Prevent vendors to be displayed several times in the search result 2023-04-20 15:48:42 -03:00
cancelorder.pl Bug 29658: Fix crash on cancelling cancelled order 2022-09-12 16:14:47 -03:00
check_budget_total.pl Bug 17600: Standardize our EXPORT_OK 2021-07-16 08:58:47 +02:00
check_uniqueness.pl Bug 36511: Some scripts missing a dependency following Bug 24879 2024-04-11 14:28:13 +00:00
duplicate_orders.pl Bug 30718: Use flatpickr's altInput 2022-08-19 08:26:31 -03:00
edi_ean.pl Bug 17600: Standardize our EXPORT_OK 2021-07-16 08:58:47 +02:00
edifactmsgs.pl Bug 17600: Standardize our EXPORT_OK 2021-07-16 08:58:47 +02:00
edimsg.pl Bug 17600: Fix tests 2021-07-16 09:47:01 +02:00
finishreceive.pl Bug 34022: Adjust items data structure 2023-06-26 14:49:52 +02:00
histsearch.pl Bug 32377: Set param skiptotals on call of GetBudgetHierarchy in acqui/histsearch.pl 2023-01-31 11:02:21 -03:00
invoice-files.pl Bug 17600: Standardize our EXPORT_OK 2021-07-16 08:58:47 +02:00
invoice.pl Bug 32705: Display the column if 1 order has an invoice price 2023-03-06 14:04:12 -03:00
invoices.pl Bug 36233: Use select2 to load vendors on invoice search 2024-03-19 21:34:45 +00:00
lateorders-export.pl Bug 15348: trivial code simplification 2022-09-16 10:36:53 -03:00
lateorders.pl Bug 33653: Use filter_by_active instead 2023-05-09 10:58:07 -03:00
moddeliverydate.pl Bug 15348: (follow-up) Fix modal to edit delivery date 2022-09-16 10:36:57 -03:00
modordernotes.pl Bug 17600: Standardize our EXPORT_OK 2021-07-16 08:58:47 +02:00
neworderempty.pl Bug 34908: Sort item types alphabetically by description when adding a new empty record as an order to a basket 2023-10-25 22:40:04 -10:00
newordersubscription.pl Bug 17600: Standardize our EXPORT_OK 2021-07-16 08:58:47 +02:00
newordersuggestion.pl Bug 23991: Move SearchSuggestion to Koha::Suggestions 2022-06-27 12:30:28 -03:00
ordered.pl Bug 17600: Standardize our EXPORT_OK 2021-07-16 08:58:47 +02:00
orderreceive.pl Bug 8179: Add vendor id on breadcrumb link 2023-05-17 14:44:42 -03:00
parcel.pl Bug 17600: Fix tests 2021-07-16 09:47:01 +02:00
parcels.pl Bug 31115: Add support for additional fields for invoices 2022-10-24 14:11:06 -03:00
showorder.pl Bug 17600: Standardize our EXPORT_OK 2021-07-16 08:58:47 +02:00
spent.pl Bug 17600: Standardize our EXPORT_OK 2021-07-16 08:58:47 +02:00
supplier.pl Bug 33103: Add the ability to create vendor aliases 2023-04-20 15:48:36 -03:00
transferorder.pl Bug 29859: Use iterator instead of as_list 2022-02-09 15:36:23 -10:00
uncertainprice.pl Bug 17600: Standardize our EXPORT_OK 2021-07-16 08:58:47 +02:00
updatesupplier.pl Bug 33104: Add the ability to create vendor interfaces 2023-05-05 10:18:46 -03:00
z3950_search.pl Bug 17600: Standardize our EXPORT_OK 2021-07-16 08:58:47 +02:00