Bug 1861 [QA Followup] - Don't modify userids, warn if we can't modify the index automatically

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
This commit is contained in:
Kyle Hall 2014-11-20 11:01:08 -05:00 committed by Tomas Cohen Arazi
parent 7135364dd2
commit 179ef0f28f

View file

@ -9610,17 +9610,21 @@ if ( CheckVersion($DBversion) ) {
$DBversion = "3.19.00.XXX";
if ( CheckVersion($DBversion) ) {
$dbh->do(q{
UPDATE borrowers SET userid = NULL where userid = ""
});
my ($count) = $dbh->selectrow_array("SELECT COUNT(*) FROM borrowers GROUP BY userid HAVING COUNT(userid) > 1");
$dbh->do(q{
ALTER TABLE borrowers
DROP INDEX userid ,
ADD UNIQUE userid (userid)
});
if ( $count ) {
print "Upgrade to $DBversion done (Bug 1861 - Unique patrons logins not (totally) enforced) FAILED!\n";
print "Your database has users with duplicate user logins. Please have your administrator deduplicate your user logins.\n";
print "Afterward, your Koha administrator should execute the following database query: ALTER TABLE borrowers DROP INDEX userid, ADD UNIQUE userid (userid)";
} else {
$dbh->do(q{
ALTER TABLE borrowers
DROP INDEX userid ,
ADD UNIQUE userid (userid)
});
print "Upgrade to $DBversion done (Bug 1861 - Unique patrons logins not (totally) enforced)\n";
}
print "Upgrade to $DBversion done (Bug 1861 - Unique patrons logins not (totally) enforced)\n";
SetVersion($DBversion);
}