Koha-clms/C4
Nick Clemens 6f135d4392
Bug 28702: Reduce DB lookups in buildKohaItemsNamespace
This patch moves the prefetch to current_branchtransfers and uses the prefetched reserves
and transfers to reduce the number of lookups from the DB

We also don't fetch the specific current transfer, knowing we have current transfers is enough

To test:
1 - Perform a search on the OPAC
2 - Add the results to a list
3 - Load the list several times and use developer tools (F12) to view the time to load in the network tab
4 - Repeat a search several times and use developer tools (F12) to view the time to load in the network tab
5 - Record the times noted above
6 - Find or create a record with many items, biblionumber 3 in my example
7 - on the command line:
    export DBIC_TRACE=1
    perl -e 'use C4::XSLT; my $i = C4::XSLT::buildKohaItemsNamespace( 3 );'
    note the lookups in reserves and transfers
8 - Apply patch
9 - Repeat 7 and note less lookups
10 - Repeat the search and list view and compare times to before the patch
11 - prove -v t/db_dependent/XSLT.t

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Tomás Cohen Arazi <tomascohen@theke.io>
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
2025-09-29 14:02:24 -06:00
..
AuthoritiesMarc Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
Barcodes Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
ClassSortRoutine Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
ClassSplitRoutine Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
Creators Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
External Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
Form Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
Heading Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
ILSDI Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
Installer Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
Labels Bug 40473: Use better algorithm for calculating Code39 barcode length 2025-09-26 10:36:41 -06:00
Linker Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
Members Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
OAI Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
Output Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
Patroncards Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
Reports Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
SIP Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
Search Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
Serials Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
Utils/DataTables Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
Accounts.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
Acquisition.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
Auth.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
Auth_cas_servers.yaml.sample
…
Auth_with_cas.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
Auth_with_ldap.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
Auth_with_shibboleth.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
AuthoritiesMarc.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
Barcodes.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
Biblio.pm Bug 38330: Make sure biblio.opac_suppressed is populated/updated on save 2025-09-29 14:02:15 -06:00
Breeding.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
Budgets.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
Calendar.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
Charset.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
Circulation.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
ClassSortRoutine.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
ClassSource.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
ClassSplitRoutine.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
Context.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
Contract.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
CourseReserves.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
Creators.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
HTML5Media.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
Heading.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
HoldsQueue.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
ImportBatch.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
ImportExportFramework.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
InstallAuth.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
Installer.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
ItemCirculationAlertPreference.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
Items.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
Koha.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
Labels.pm
…
Languages.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
Letters.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
Linker.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
Log.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
MarcModificationTemplates.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
Matcher.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
Members.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
Message.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
Output.pm Bug 38936: Introduce C4::Output::redirect_if_opac_suppressed 2025-09-29 14:02:22 -06:00
Overdues.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
Patroncards.pm Bug 38664: Tidy the whole codebase 2025-02-11 14:58:24 +01:00
Record.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
Reports.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
Reserves.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
Ris.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
RotatingCollections.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
SMS.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
Scheduler.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
Scrubber.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
Search.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
Serials.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
Service.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
ShelfBrowser.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
SocialData.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
Stats.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
Suggestions.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
TTParser.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
Tags.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
Templates.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
TmplToken.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
TmplTokenType.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
UsageStats.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
XISBN.pm Bug 40163: Fix several http addresses in the code docs 2025-09-23 16:21:29 -06:00
XSLT.pm Bug 28702: Reduce DB lookups in buildKohaItemsNamespace 2025-09-29 14:02:24 -06:00