blocks upgrade MDL-22693 We also need to drop another old index, on sites that were...
authorTim Hunt <T.J.Hunt@open.ac.uk>
Wed, 15 Sep 2010 10:25:09 +0000 (10:25 +0000)
committerTim Hunt <T.J.Hunt@open.ac.uk>
Wed, 15 Sep 2010 10:25:09 +0000 (10:25 +0000)
lib/db/upgrade.php
version.php

index aee14bd..523aae4 100644 (file)
@@ -5082,7 +5082,54 @@ WHERE gradeitemid IS NOT NULL AND grademax IS NOT NULL");
         upgrade_main_savepoint(true, 2010082502);
     }
 
-    if ($oldversion < 2010091300) {
+    if ($oldversion < 2010091303) {
+        // drop all test tables from old xmldb test suite
+        $table = new xmldb_table('testtable');
+        if ($dbman->table_exists($table)) {
+            $dbman->drop_table($table);
+        }
+        $table = new xmldb_table('anothertest');
+        if ($dbman->table_exists($table)) {
+            $dbman->drop_table($table);
+        }
+        $table = new xmldb_table('newnameforthetable');
+        if ($dbman->table_exists($table)) {
+            $dbman->drop_table($table);
+        }
+        upgrade_main_savepoint(true, 2010091303);
+    }
+
+    if ($oldversion < 2010091500) {
+
+        // Changing precision of field token on table registration_hubs to (255)
+        $table = new xmldb_table('registration_hubs');
+        $field = new xmldb_field('token', XMLDB_TYPE_CHAR, '255', null, XMLDB_NOTNULL, null, null, 'id');
+
+        // Launch change of precision for field token
+        $dbman->change_field_precision($table, $field);
+
+        // Main savepoint reached
+        upgrade_main_savepoint(true, 2010091500);
+    }
+
+    if ($oldversion < 2010091501) {
+        // This index used to exist in Moodle 1.9 and was never dropped in the upgrade above.
+        // Drop it now, or it breaks the following alter column.
+
+        // Define index pagetypepattern (not unique) to be dropped form block_instances
+        $table = new xmldb_table('block_instances');
+        $index = new xmldb_index('pagetypepattern', XMLDB_INDEX_NOTUNIQUE, array('pagetypepattern'));
+
+        // Conditionally launch drop index pagetypepattern
+        if ($dbman->index_exists($table, $index)) {
+            $dbman->drop_index($table, $index);
+        }
+
+        // Main savepoint reached
+        upgrade_main_savepoint(true, 2010091501);
+    }
+
+    if ($oldversion < 2010091502) {
         // Need to drop the index before we can alter the column precision in the next step.
 
         // Define index parentcontextid-showinsubcontexts-pagetypepattern-subpagepattern (not unique) to be dropped form block_instances
@@ -5095,10 +5142,10 @@ WHERE gradeitemid IS NOT NULL AND grademax IS NOT NULL");
         }
 
         // Main savepoint reached
-        upgrade_main_savepoint(true, 2010091300);
+        upgrade_main_savepoint(true, 2010091502);
     }
 
-    if ($oldversion < 2010091301) {
+    if ($oldversion < 2010091503) {
 
         // Changing precision of field pagetypepattern on table block_instances to (64)
         $table = new xmldb_table('block_instances');
@@ -5108,10 +5155,10 @@ WHERE gradeitemid IS NOT NULL AND grademax IS NOT NULL");
         $dbman->change_field_precision($table, $field);
 
         // Main savepoint reached
-        upgrade_main_savepoint(true, 2010091301);
+        upgrade_main_savepoint(true, 2010091503);
     }
 
-    if ($oldversion < 2010091302) {
+    if ($oldversion < 2010091504) {
         // Now add the index back.
 
         // Define index parentcontextid-showinsubcontexts-pagetypepattern-subpagepattern (not unique) to be added to block_instances
@@ -5124,37 +5171,7 @@ WHERE gradeitemid IS NOT NULL AND grademax IS NOT NULL");
         }
 
         // Main savepoint reached
-        upgrade_main_savepoint(true, 2010091302);
-    }
-
-    if ($oldversion < 2010091303) {
-        // drop all test tables from old xmldb test suite
-        $table = new xmldb_table('testtable');
-        if ($dbman->table_exists($table)) {
-            $dbman->drop_table($table);
-        }
-        $table = new xmldb_table('anothertest');
-        if ($dbman->table_exists($table)) {
-            $dbman->drop_table($table);
-        }
-        $table = new xmldb_table('newnameforthetable');
-        if ($dbman->table_exists($table)) {
-            $dbman->drop_table($table);
-        }
-        upgrade_main_savepoint(true, 2010091303);
-    }
-
-    if ($oldversion < 2010091500) {
-
-        // Changing precision of field token on table registration_hubs to (255)
-        $table = new xmldb_table('registration_hubs');
-        $field = new xmldb_field('token', XMLDB_TYPE_CHAR, '255', null, XMLDB_NOTNULL, null, null, 'id');
-
-        // Launch change of precision for field token
-        $dbman->change_field_precision($table, $field);
-
-        // Main savepoint reached
-        upgrade_main_savepoint(true, 2010091500);
+        upgrade_main_savepoint(true, 2010091504);
     }
 
     return true;
index 3bdf1ea..334a1d4 100644 (file)
@@ -29,8 +29,8 @@
 
 defined('MOODLE_INTERNAL') || die();
 
-$version = 2010091500;  // YYYYMMDD   = date of the last version bump
+$version = 2010091504;  // YYYYMMDD   = date of the last version bump
                         //         XX = daily increments
 
-$release = '2.0 Preview 4+ (Build: 20100915)';  // Human-friendly version name
+$release = '2.0 Preview 4+ (Build: 20100913)';  // Human-friendly version name