diff --git a/lib/db/upgrade.php b/lib/db/upgrade.php index 76c64c3ac11..00c7d651ef3 100644 --- a/lib/db/upgrade.php +++ b/lib/db/upgrade.php @@ -2955,5 +2955,34 @@ function xmldb_main_upgrade($oldversion) { upgrade_main_savepoint(true, 2013111802.10); } + // MDL-32543 Make sure that the log table has correct length for action and url fields. + if ($oldversion < 2013111803.01) { + + $table = new xmldb_table('log'); + + $columns = $DB->get_columns('log'); + if ($columns['action']->max_length < 40) { + $index1 = new xmldb_index('course-module-action', XMLDB_INDEX_NOTUNIQUE, array('course', 'module', 'action')); + if ($dbman->index_exists($table, $index1)) { + $dbman->drop_index($table, $index1); + } + $index2 = new xmldb_index('action', XMLDB_INDEX_NOTUNIQUE, array('action')); + if ($dbman->index_exists($table, $index2)) { + $dbman->drop_index($table, $index2); + } + $field = new xmldb_field('action', XMLDB_TYPE_CHAR, '40', null, XMLDB_NOTNULL, null, null, 'cmid'); + $dbman->change_field_precision($table, $field); + $dbman->add_index($table, $index1); + $dbman->add_index($table, $index2); + } + + if ($columns['url']->max_length < 100) { + $field = new xmldb_field('url', XMLDB_TYPE_CHAR, '100', null, XMLDB_NOTNULL, null, null, 'action'); + $dbman->change_field_precision($table, $field); + } + + upgrade_main_savepoint(true, 2013111803.01); + } + return true; } diff --git a/version.php b/version.php index 79f79fc6760..1331290e0b1 100644 --- a/version.php +++ b/version.php @@ -29,7 +29,7 @@ defined('MOODLE_INTERNAL') || die(); -$version = 2013111803.00; // 20131118 = branching date YYYYMMDD - do not modify! +$version = 2013111803.01; // 20131118 = branching date YYYYMMDD - do not modify! // RR = release increments - 00 in DEV branches. // .XX = incremental changes.