r2064 + working on ticket:170
authorDenis Ovsienko <infrastation@yandex.ru>
Wed, 16 Jul 2008 18:09:19 +0000 (18:09 +0000)
committerDenis Ovsienko <infrastation@yandex.ru>
Wed, 16 Jul 2008 18:09:19 +0000 (18:09 +0000)
install/init-structure.sql
upgrade.php

index 21b672c4df06fbde6de007f13bcf12b36a78d0a8..dc3cb0750e3a2a416a002d0dc513102e3b1318a9 100644 (file)
@@ -118,7 +118,8 @@ CREATE TABLE `IPVirtualService` (
   `name` char(255) default NULL,
   `vsconfig` text,
   `rsconfig` text,
-  PRIMARY KEY  (`id`)
+  PRIMARY KEY  (`id`),
+  UNIQUE KEY `endpoint` (`vip`,`vport`,`proto`)
 ) ENGINE=MyISAM;
 
 CREATE TABLE `Link` (
index da8899366d0f44052314c71c88c43a93197b2d07..e63493811364b9623b7fdcd92e15d713e294b47c 100644 (file)
@@ -54,13 +54,18 @@ function printReleaseNotes ($batchid)
        switch ($batchid)
        {
                case '0.16.0':
-                       echo "<font color=red><strong>Release notes</strong></font><br>";
+                       echo "<font color=red><strong>Release notes for ${batchid}</strong></font><br>";
                        echo 'The user permission records of this system have been automatically converted ';
                        echo 'to switch to the new RackCode authorization system. To prevent possible data ';
                        echo 'leak, the second line of the automatically created configuration bans everything ';
                        echo '(and the first allows everything to you, the administrator). The whole config can ';
                        echo "be reviewed on the Permissions page (under Configuration). Sorry for the inconvenience.<br><br>\n";
                        break;
+               case '0.16.1':
+                       echo "<font color=red><strong>Release notes for ${batchid}</strong></font><br>";
+                       echo 'This release fixes a missing UNIQUE key in the database. However, this fix may sometimes fail, ';
+                       echo 'if the DB contains duplicate records. If you see a failed ADD UNIQUE query, the only solution is to delete the duplicates manually.';
+                       break;
                default:
                        break;
        }
@@ -1356,6 +1361,7 @@ CREATE TABLE `TagTree` (
                case '0.16.1':
                        $query[] = 'alter table Script modify column script_text longtext';
                        $query[] = "update Config set varvalue = '0.16.1' where varname = 'DB_VERSION'";
+                       $query[] = 'alter table IPVirtualService ADD UNIQUE endpoint (vip, vport, proto)';
                        break;
                default:
                        showError ("executeUpgradeBatch () failed, because batch '${batchid}' isn't defined");