Koha/C4
Kyle M Hall 08ad241ab5 Bug 28833: Speed up holds queue builder via parallel processing
The holds queue builder can take a very long time to run on systems with many holds. For example, a partner with 124,784 unfilled ( not found ) holds, is taking about 64 minutes to run. If we run that same number of holds in 5 parallel chunks ( splitting the number of records as evenly as possible, but *not* taking into account the holds per bib ), it takes 21.5 minutes. If we use 10 loops, it takes less then 14 minutes.

Test Plan:
1) Generate a huge number of holds ( a few thousand at the minimum )
2) Run the holds queue builder, use the `time` utility to track how much
   time it took to run
3) Set HoldsQueueParallelLoopsCount to 10
4) Repeat step 2, note the improvement in speed
5) Experiment with other values for HoldsQueueParallelLoopsCount
6) prove t/db_dependent/HoldsQueue.t
2021-08-10 07:05:15 -04:00
..
AuthoritiesMarc
Barcodes Bug 26673: Fix perlcritic complains 2020-11-02 08:42:20 +01:00
ClassSortRoutine
ClassSplitRoutine Bug 21395: Make perlcritic happy 2020-06-29 12:37:02 +02:00
Creators Bug 25852: Improve C4::Creators::Lib reliability under plack 2020-07-31 10:03:26 +02:00
External
Form
Heading Bug 18017: Add subdivisions to UNIMARC authorities zebra configuration 2021-04-16 15:12:45 +02:00
ILSDI Bug 28630: Add track_login_daily to ILSDI::AuthenticatePatron 2021-08-06 14:29:16 -04:00
Installer
Labels Bug 21395: Make perlcritic happy 2020-06-29 12:37:02 +02:00
Linker Bug 25189: Don't create authority if results found 2020-06-24 14:31:37 +02:00
Members Bug 24447: Changing 'DUE' to example in database that exists. 2021-01-22 13:46:41 +01:00
OAI Bug 25460: Update OAI sets when adding/editing/deleting item records 2020-10-15 12:56:30 +02:00
Output
Patroncards Bug 21395: Make perlcritic happy 2020-06-29 12:37:02 +02:00
Reports Bug 24695: Move to Koha::Report->is_sql_valid 2021-04-12 15:27:50 +02:00
Search
Serials
SIP Bug 27908: Add support for circulation status 1 ( other ) for damaged items 2021-07-16 08:55:23 -04:00
Utils Bug 28069: (bug 27715 follow-up) Fix sort for lists 2021-04-16 16:20:50 +02:00
Accounts.pm Bug 22394: Remove C4::Accounts::manualinvoice 2020-11-04 12:59:33 +01:00
Acquisition.pm Bug 27203: Calculate tax based on ecost if unitprice not set 2021-05-11 15:09:13 +02:00
Auth.pm Bug 28660: (bug 21325 follow-up) Fix auto self check 2021-07-23 07:44:31 -04:00
Auth_cas_servers.yaml.sample
Auth_with_cas.pm Bug 20854: (QA follow-up) Improve readability 2021-04-21 10:51:29 +02:00
Auth_with_ldap.pm Bug 28490: Revert "Bug 26995: Drop column relationship from borrowers, deletedborrowers and borrower_modifications tables" 2021-06-18 07:47:34 -04:00
Auth_with_shibboleth.pm Bug 28367: (follow-up) Fix plack condition in C4/Auth_with_shibboleth.pm 2021-05-18 11:26:27 +02:00
AuthoritiesMarc.pm Bug 21958: Fix bibliographic record field comparison with authority 2021-04-01 17:13:56 +02:00
BackgroundJob.pm
Barcodes.pm
Biblio.pm Bug 28384: Add 'no_items' option to TransformMarcToKoha 2021-07-16 09:32:12 -04:00
Breeding.pm Bug 26528: Z39.50/SRU ignore invalid replies 2021-04-16 16:20:42 +02:00
Budgets.pm Bug 23195: Always count shipping costs as 'spent' 2021-04-22 14:50:11 +02:00
Calendar.pm Bug 25723: (QA follow-up) Handle holiday and exception on same day 2020-07-20 17:45:31 +02:00
Charset.pm
Circulation.pm Bug 28455: lastseen should be updated at checkout if TrackLastPatronActivity is enabled 2021-07-09 13:54:02 -04:00
ClassSortRoutine.pm Bug 21395: Make perlcritic happy 2020-06-29 12:37:02 +02:00
ClassSource.pm
ClassSplitRoutine.pm
Context.pm Bug 28317: Use the default CGI::Session serializer 2021-05-19 14:45:32 +02:00
Contract.pm
CourseReserves.pm Bug 21395: Make perlcritic happy 2020-06-29 12:37:02 +02:00
Creators.pm Bug 21395: Make perlcritic happy 2020-06-29 12:37:02 +02:00
Debug.pm
Heading.pm Bug 21958: Fix bibliographic record field comparison with authority 2021-04-01 17:13:56 +02:00
HoldsQueue.pm Bug 28833: Speed up holds queue builder via parallel processing 2021-08-10 07:05:15 -04:00
HTML5Media.pm Bug 27422: YouTube videos are HTTPS only 2021-02-08 17:09:34 +01:00
ImportBatch.pm Bug 24469: Move the new queries to a dedicated ImportBatch subroutine 2021-02-18 11:52:59 +01:00
ImportExportFramework.pm Bug 27968: Fix framework import if isurl has an incorrect value 2021-04-23 10:03:30 +02:00
InstallAuth.pm Bug 28317: Use the default CGI::Session serializer 2021-05-19 14:45:32 +02:00
Installer.pm Bug 28281: Remove double decoding when importing installation data 2021-05-07 14:44:00 +02:00
ItemCirculationAlertPreference.pm Bug 23271: Replace search_limited with search_with_library_limits 2021-04-21 15:25:07 +02:00
Items.pm Bug 28533: Fix other ocurrence 2021-08-06 11:11:51 -04:00
Koha.pm Bug 27746: prevent regexp undefined warning when checking subfield contents ($oclc) 2021-04-14 15:25:26 +02:00
Labels.pm Bug 21395: Make perlcritic happy 2020-06-29 12:37:02 +02:00
Languages.pm Bug 27491: Rename system preference opaclanguages to OPACLanguages 2021-01-22 14:59:27 +01:00
Letters.pm Bug 28581: Enhance POD for EnqueueLetter 2021-07-09 09:05:48 -04:00
Linker.pm
Log.pm Bug 23632: Remove C4::Logs::GetLogs 2020-08-18 15:45:48 +02:00
MarcModificationTemplates.pm Bug 24840: Replace DateTime->now with dt_from_string 2020-04-08 11:54:23 +01:00
Matcher.pm Bug 26199: Include LDR for match check/match point 2021-03-09 17:20:47 +01:00
Members.pm Bug 28001: (bug 27050 follow-up) Fix delete_patrons if no category passed 2021-04-16 12:28:17 +02:00
Message.pm Bug 28230: Store C4::Message->{metadata} as Perl string always 2021-04-28 11:07:06 +02:00
NewsChannels.pm Bug 26205: (QA follow-up) Change OPACNEWS to just NEWS 2021-07-09 08:35:42 -04:00
Output.pm Bug 11994: OpenSearch plugins needs to be delivered with Content-Type application/opensearchdescription+xml 2020-06-24 14:31:37 +02:00
Overdues.pm Bug 28144: Check if issue_id defined 2021-04-27 16:23:49 +02:00
Patroncards.pm Bug 21395: Make perlcritic happy 2020-06-29 12:37:02 +02:00
Record.pm Bug 27673: Fix encoding issues 2021-02-16 14:54:50 +01:00
Reports.pm Bug 27486: Rename system preference delimiter to CSVDelimiter 2021-01-29 09:03:45 +01:00
Reserves.pm Bug 28754: Only adjust holds on specific biblio and don't go past end of array 2021-08-06 14:07:59 -04:00
Ris.pm Bug 27673: Fix encoding issues 2021-02-16 14:54:50 +01:00
RotatingCollections.pm Bug 17202: Don't report an item in a collection if the collection doesn't exist 2021-04-28 11:07:06 +02:00
Scheduler.pm
Scrubber.pm
Search.pm Bug 28483: Remove warnings from Search.t 2021-07-16 09:46:11 -04:00
Serials.pm Bug 27842: Update serial.biblionumber when a subscription is linked with another record 2021-04-28 11:07:06 +02:00
Service.pm Bug 25898: Prohibit indirect object notation 2020-10-15 12:56:30 +02:00
ShelfBrowser.pm Bug 26673: Remove shebangs from Perl modules 2020-10-26 00:14:42 +01:00
SMS.pm Bug 27673: Replace YAML with YAML::XS 2021-02-16 14:54:50 +01:00
SocialData.pm
Stats.pm Bug 24151: Copy info to the pseudonymized table when a transaction is done 2020-07-20 15:17:42 +02:00
Suggestions.pm Bug 7806: Fix remaining occurrences of 0000-00-00 2021-03-01 11:16:42 +01:00
Tags.pm
Templates.pm Bug 26734: Rename activethemes with availablethemes 2021-05-27 15:07:36 +02:00
TmplToken.pm
TmplTokenType.pm
TTParser.pm Bug 26673: Remove #!/usr/bin/env perl from .pm modules too 2020-10-26 00:14:42 +01:00
UsageStats.pm Bug 28108: Fix filtering 2021-05-10 15:52:53 +02:00
XISBN.pm Bug 26364: Don't discard the passed isbn 2021-01-07 15:37:15 +01:00
XSLT.pm Bug 28299: Make buildKohaItemsNamespace accept Koha::Items 2021-07-09 13:48:57 -04:00