From f4c904ce19c46166ab6b7be54a34a5403a844111 Mon Sep 17 00:00:00 2001 From: Nick Clemens Date: Mon, 14 Jun 2021 12:41:50 +0000 Subject: [PATCH] Bug 28534: Atomic update to fix existing installs Signed-off-by: David Nind --- .../data/mysql/atomicupdate/bug28534.perl | 23 +++++++++++++++++++ 1 file changed, 23 insertions(+) create mode 100644 installer/data/mysql/atomicupdate/bug28534.perl diff --git a/installer/data/mysql/atomicupdate/bug28534.perl b/installer/data/mysql/atomicupdate/bug28534.perl new file mode 100644 index 0000000000..9733a81494 --- /dev/null +++ b/installer/data/mysql/atomicupdate/bug28534.perl @@ -0,0 +1,23 @@ +$DBversion = 'XXX'; +if( CheckVersion( $DBversion ) ) { + if( !TableExists( 'pending_offline_operations' ) ) { + $dbh->do(q{ + CREATE TABLE `pending_offline_operations` ( + `operationid` int(11) NOT NULL AUTO_INCREMENT, + `userid` varchar(30) COLLATE utf8mb4_unicode_ci NOT NULL, + `branchcode` varchar(10) COLLATE utf8mb4_unicode_ci NOT NULL, + `timestamp` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP, + `action` varchar(10) COLLATE utf8mb4_unicode_ci NOT NULL, + `barcode` varchar(20) COLLATE utf8mb4_unicode_ci DEFAULT NULL, + `cardnumber` varchar(32) COLLATE utf8mb4_unicode_ci DEFAULT NULL, + `amount` decimal(28,6) DEFAULT NULL, + PRIMARY KEY (`operationid`) + ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci + }); + } else { + $dbh->do(q{ + ALTER TABLE pending_offline_operations ENGINE = 'InnoDB'; + }); + } + NewVersion( $DBversion, 28534, "Set pending_offline_operations INNoDB rather than MyISAM"); +} -- 2.20.1