From 0c09cc2116b2d0378287816171b22857d03c4001 Mon Sep 17 00:00:00 2001 From: Agustin Moyano Date: Wed, 8 Apr 2020 16:53:43 -0300 Subject: [PATCH] Bug 25086: (follow-up) Set changed_fields column as nullable This patch reverts previous patch (left there because it was signed off), and sets changed_fields column as nullable. Attend only this test plan and not previous patch. To test: 1. Do not apply any patch 2. Set PatronSelfRegistrationVerifyByEmail preference to require 3. Fill self registration form in opac and submit CHECK => OPAC dies with a nasty message, that says Field 'changed_fields' doesn't have a default value 4. Apply this patch and updatedatabase 5. Repeat step 3 SUCCESS => Registry process continues as expected 6. Sign off Sponsored-by: Orex Digital Signed-off-by: Victor Grousset/tuxayo --- Koha/Patron/Modification.pm | 2 -- installer/data/mysql/atomicupdate/bug_25086.perl | 9 +++++++++ installer/data/mysql/kohastructure.sql | 2 +- 3 files changed, 10 insertions(+), 3 deletions(-) create mode 100644 installer/data/mysql/atomicupdate/bug_25086.perl diff --git a/Koha/Patron/Modification.pm b/Koha/Patron/Modification.pm index 375b6886ad..51f182a80b 100644 --- a/Koha/Patron/Modification.pm +++ b/Koha/Patron/Modification.pm @@ -70,8 +70,6 @@ sub store { }; } - $self->changed_fields('') unless defined $self->changed_fields; - return $self->SUPER::store(); } diff --git a/installer/data/mysql/atomicupdate/bug_25086.perl b/installer/data/mysql/atomicupdate/bug_25086.perl new file mode 100644 index 0000000000..183408e6d4 --- /dev/null +++ b/installer/data/mysql/atomicupdate/bug_25086.perl @@ -0,0 +1,9 @@ +$DBversion = 'XXX'; # will be replaced by the RM +if( CheckVersion( $DBversion ) ) { + # you can use $dbh here like: + + $dbh->do( "ALTER TABLE borrower_modifications MODIFY changed_fields MEDIUMTEXT DEFAULT NULL" ); + + # Always end with this (adjust the bug info) + NewVersion( $DBversion, 25086, "Set changed_fields column of borrower_modifications as nullable"); +} diff --git a/installer/data/mysql/kohastructure.sql b/installer/data/mysql/kohastructure.sql index 740b5958c8..97801a50e2 100644 --- a/installer/data/mysql/kohastructure.sql +++ b/installer/data/mysql/kohastructure.sql @@ -3387,7 +3387,7 @@ CREATE TABLE borrower_attribute_types_branches( -- association table between bor CREATE TABLE IF NOT EXISTS `borrower_modifications` ( `timestamp` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, `verification_token` varchar(255) NOT NULL DEFAULT '', - `changed_fields` MEDIUMTEXT NOT NULL, + `changed_fields` MEDIUMTEXT DEFAULT NULL, `borrowernumber` int(11) NOT NULL DEFAULT '0', `cardnumber` varchar(32) DEFAULT NULL, `surname` LONGTEXT, -- 2.26.1