Koha/installer/data/mysql/atomicupdate/bug_30481.pl
Marcel de Rooy 0b647518de Bug 30481: Drop unique constraint deleteditemsstocknumberidx
Resolves a sync issue between database and schema caused by
differences between structure and upgrades. Note: newer
databases do not contain this index any longer.

Test plan:
Run dbrev.
Check SHOW CREATE TABLE deleteditems.
Verify that unique index has been dropped, regular index added.

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Victor Grousset/tuxayo <victor@tuxayo.net>
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
2022-04-13 15:55:39 +02:00

21 lines
760 B
Perl
Executable file

use Modern::Perl;
return {
bug_number => 30481,
description => "DB schema sync for deleteditems",
up => sub {
my ($args) = @_;
my ($dbh, $out) = @$args{qw(dbh out)};
my $sql = "ALTER TABLE deleteditems MODIFY COLUMN `stocknumber` varchar(32) default NULL"; # removes comment in db
$dbh->do($sql);
if( unique_key_exists('deleteditems', 'deleteditemsstocknumberidx') ) {
$sql = "ALTER TABLE deleteditems DROP KEY deleteditemsstocknumberidx";
$dbh->do($sql);
}
if( !index_exists('deleteditems', 'delitemstocknumberidx') ) {
$sql = "ALTER TABLE deleteditems ADD INDEX `delitemstocknumberidx` (`stocknumber`)";
$dbh->do($sql);
}
},
};