@@ -, +, @@ --- installer/data/mysql/atomicupdate/bug_9988a.perl | 19 +++++++++++++++++++ installer/data/mysql/sysprefs.sql | 2 +- .../en/modules/admin/preferences/authorities.pref | 10 ++++------ 3 files changed, 24 insertions(+), 7 deletions(-) create mode 100644 installer/data/mysql/atomicupdate/bug_9988a.perl --- a/installer/data/mysql/atomicupdate/bug_9988a.perl +++ a/installer/data/mysql/atomicupdate/bug_9988a.perl @@ -0,0 +1,19 @@ +$DBversion = 'XXX'; # will be replaced by the RM +if( CheckVersion( $DBversion ) ) { + my $oldval = C4::Context->preference('dontmerge'); + my $newval = $oldval ? 0 : 50; + + # Remove dontmerge, add AuthorityMergeLimit + $dbh->do(q/ +DELETE FROM systempreferences WHERE variable = 'dontmerge'; + /); + $dbh->do(qq/ +INSERT IGNORE INTO systempreferences ( variable, value, options, explanation, type ) VALUES ('AuthorityMergeLimit','$newval',NULL,'Maximum number of biblio records updated immediately when an authority record has been modified.','integer'); + /); + + SetVersion( $DBversion ); + if( $newval == 0 ) { + print "NOTE: Since dontmerge was enabled, we have initialized AuthorityMergeLimit to 0 records. Please consider raising this value. This will allow for performing smaller merges directly and only postponing larger merges.\n"; + } + print "Upgrade to $DBversion done (Bug 9988 - Add AuthorityMergeLimit)\n"; +} --- a/installer/data/mysql/sysprefs.sql +++ a/installer/data/mysql/sysprefs.sql @@ -52,6 +52,7 @@ INSERT INTO systempreferences ( `variable`, `value`, `options`, `explanation`, ` ('AudioAlerts','0','','Enable circulation sounds during checkin and checkout in the staff interface. Not supported by all web browsers yet.','YesNo'), ('AuthDisplayHierarchy','0','','Display authority hierarchies','YesNo'), ('AuthoritiesLog','1',NULL,'If ON, log edit/create/delete actions on authorities.','YesNo'), +('AuthorityMergeLimit','50',NULL,'Maximum number of biblio records updated immediately when an authority record has been modified.','integer'), ('AuthorityMergeMode','loose','loose|strict','Authority merge mode','Choice'), ('AuthoritySeparator','--','10','Used to separate a list of authorities in a display. Usually --','free'), ('autoBarcode','OFF','incremental|annual|hbyymmincr|EAN13|OFF','Used to autogenerate a barcode: incremental will be of the form 1, 2, 3; annual of the form 2007-0001, 2007-0002; hbyymmincr of the form HB08010001 where HB=Home Branch','Choice'), @@ -139,7 +140,6 @@ INSERT INTO systempreferences ( `variable`, `value`, `options`, `explanation`, ` ('DisplayLibraryFacets', 'holding', 'home|holding|both', 'Defines which library facets to display.', 'Choice'), ('DisplayMultiPlaceHold','1','','Display the ability to place multiple holds or not','YesNo'), ('DisplayOPACiconsXSLT','1','','If ON, displays the format, audience, and material type icons in XSLT MARC21 results and detail pages in the OPAC.','YesNo'), -('dontmerge','1',NULL,'If ON, modifying an authority record will not update all associated bibliographic records immediately, ask your system administrator to enable the merge_authorities.pl cron job','YesNo'), ('DumpTemplateVarsIntranet', '0', NULL , 'If enabled, dump all Template Toolkit variable to a comment in the html source for the staff intranet.', 'YesNo'), ('DumpTemplateVarsOpac', '0', NULL , 'If enabled, dump all Template Toolkit variable to a comment in the html source for the opac.', 'YesNo'), ('EasyAnalyticalRecords','0','','If on, display in the catalogue screens tools to easily setup analytical record relationships','YesNo'), --- a/koha-tmpl/intranet-tmpl/prog/en/modules/admin/preferences/authorities.pref +++ a/koha-tmpl/intranet-tmpl/prog/en/modules/admin/preferences/authorities.pref @@ -24,12 +24,10 @@ Authorities: no: "do not generate" - authority records that are missing (BiblioAddsAuthorities must be set to "allow" for this to have any effect). - - - pref: dontmerge - default: yes - choices: - yes: "Don't" - no: Do - - automatically update attached biblios when changing an authority record. If this is off, please ask your administrator to enable the merge_authority.pl cronjob. + - When modifying an authority record, do not update attached biblio records if the number exceeds + - pref: AuthorityMergeLimit + default: 50 + - records. (Above this limit, the merge_authority cron job will merge them.) - - Use the following text for the contents of MARC21 authority control field 008 position 06-39 (fixed length data elements). Do NOT include the date (position 00-05). - pref: MARCAuthorityControlField008 --