From 011a4ac175925a142749eb39dce0b01c0619a3d4 Mon Sep 17 00:00:00 2001 From: Jonathan Druart Date: Thu, 11 Dec 2014 16:49:34 +0100 Subject: [PATCH] Bug 11165: Automatically save the authority last modification time This patch rename the column auth_header.datemodified with modification_time. Now this column will be automatically updated when a row will be updated. Test plan: 0/ Verify that la major part of your auth_header.datemodified is set to null 1/ Execute the updatedb entry 2/ Verify that the column is renamed and the values have not been changed. 3/ Update an authority and verify (using the sql cli) that this value has been updated. --- installer/data/mysql/kohastructure.sql | 2 +- installer/data/mysql/updatedatabase.pl | 14 ++++++++++++++ 2 files changed, 15 insertions(+), 1 deletion(-) diff --git a/installer/data/mysql/kohastructure.sql b/installer/data/mysql/kohastructure.sql index 9504876..7054c97 100644 --- a/installer/data/mysql/kohastructure.sql +++ b/installer/data/mysql/kohastructure.sql @@ -24,7 +24,7 @@ CREATE TABLE `auth_header` ( `authid` bigint(20) unsigned NOT NULL auto_increment, `authtypecode` varchar(10) NOT NULL default '', `datecreated` date default NULL, - `datemodified` date default NULL, + `modification_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, `origincode` varchar(20) default NULL, `authtrees` mediumtext, `marc` blob, diff --git a/installer/data/mysql/updatedatabase.pl b/installer/data/mysql/updatedatabase.pl index aa5bbbf..0d2ca44 100755 --- a/installer/data/mysql/updatedatabase.pl +++ b/installer/data/mysql/updatedatabase.pl @@ -9867,6 +9867,20 @@ if(CheckVersion($DBversion)) { SetVersion($DBversion); } +$DBversion = "3.19.00.XXX"; +if ( CheckVersion($DBversion) ) { + $dbh->do(q| + ALTER TABLE auth_header + CHANGE COLUMN datemodified modification_time TIMESTAMP NOT NULL default CURRENT_TIMESTAMP + |); + $dbh->do(q| + ALTER TABLE auth_header + CHANGE COLUMN modification_time modification_time TIMESTAMP NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP + |); + print "Upgrade to $DBversion done (Bug 11165: Update auth_header.datemodified when updated)\n"; + SetVersion ($DBversion); +} + =head1 FUNCTIONS =head2 TableExists($table) -- 2.1.0