To view the issue: 1 - Add a bunch of holds to a record https://github.com/kidclamp/handy-koha-script/blob/main/randhold.pl 2 - Enable profiling: https://wiki.koha-community.org/wiki/Profiling_with_Devel::NYTProf#NYTProf_with_Plack 3 - Browse to the record and load the holds table 4 - View the flame graph for the request like instructions in #2 5 - Note that Koha::Hold->borrower and Koha::Hold->item take a lot of time
Created attachment 190438 [details] [review] Bug 41432: Prefetch items and borrowers for holds To test: 1 - Add a bunch of holds to a record https://github.com/kidclamp/handy-koha-script/blob/main/randhold.pl 2 - Enable profiling: https://wiki.koha-community.org/wiki/Profiling_with_Devel::NYTProf#NYTProf_with_Plack 3 - Browse to the record and load the holds table 4 - View the flame graph for the request like instructions in #2 5 - Note that Koha::Hold->borrower and Koha::Hold->item take a lot of time 6 - Apply patch, restart all 7 - Reload page 8 - Reload flame graph 9 - Note time for fetching borrowers and items is significantly reduced 10 - Sing off!
Created attachment 190439 [details] [review] Bug 41432: Prefetch items and borrowers for holds To test: 1 - Add a bunch of holds to a record https://github.com/kidclamp/handy-koha-script/blob/main/randhold.pl 2 - Enable profiling: https://wiki.koha-community.org/wiki/Profiling_with_Devel::NYTProf#NYTProf_with_Plack 3 - Browse to the record and load the holds table 4 - View the flame graph for the request like instructions in #2 5 - Note that Koha::Hold->borrower and Koha::Hold->item take a lot of time 6 - Apply patch, restart all 7 - Reload page 8 - Reload flame graph 9 - Note time for fetching borrowers and items is significantly reduced 10 - Sing off! Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Trivial, self SO
Created attachment 190440 [details] [review] Bug 41432: Prefetch items and borrowers for holds To test: 1 - Add a bunch of holds to a record https://github.com/kidclamp/handy-koha-script/blob/main/randhold.pl 2 - Enable profiling: https://wiki.koha-community.org/wiki/Profiling_with_Devel::NYTProf#NYTProf_with_Plack 3 - Browse to the record and load the holds table 4 - View the flame graph for the request like instructions in #2 5 - Note that Koha::Hold->borrower and Koha::Hold->item take a lot of time 6 - Apply patch, restart all 7 - Reload page 8 - Reload flame graph 9 - Note time for fetching borrowers and items is significantly reduced 10 - Sing off! Signed-off-by: Nick Clemens <nick@bywatersolutions.com> Signed-off-by: Martin Renvoize <martin.renvoize@openfifth.co.uk>