diff options
author | Joas Schilling <nickvergessen@gmx.de> | 2014-08-07 16:51:04 +0200 |
---|---|---|
committer | Joas Schilling <nickvergessen@gmx.de> | 2014-08-07 16:51:04 +0200 |
commit | 39a99df080652dbb8f36b952d93c450230c25ccc (patch) | |
tree | 45906de7c24a5fb860d923bd267276ca95a51ae1 /phpBB/phpbb/db | |
parent | 8f1be5e7414cd6cd79af8125962303af9c90b24e (diff) | |
parent | 9b36b5283cc29f59428206726f666554b0e0a358 (diff) | |
download | forums-39a99df080652dbb8f36b952d93c450230c25ccc.tar forums-39a99df080652dbb8f36b952d93c450230c25ccc.tar.gz forums-39a99df080652dbb8f36b952d93c450230c25ccc.tar.bz2 forums-39a99df080652dbb8f36b952d93c450230c25ccc.tar.xz forums-39a99df080652dbb8f36b952d93c450230c25ccc.zip |
Merge branch 'develop-ascraeus' into develop
* develop-ascraeus:
[ticket/12873] Add migration to rename the index
[ticket/12873] Don not touch the existing migrations
[ticket/12873] Test the good identifier in \phpbb\db\tools
Diffstat (limited to 'phpBB/phpbb/db')
-rw-r--r-- | phpBB/phpbb/db/migration/data/v310/rename_too_long_indexes.php | 38 | ||||
-rw-r--r-- | phpBB/phpbb/db/tools.php | 2 |
2 files changed, 39 insertions, 1 deletions
diff --git a/phpBB/phpbb/db/migration/data/v310/rename_too_long_indexes.php b/phpBB/phpbb/db/migration/data/v310/rename_too_long_indexes.php new file mode 100644 index 0000000000..8d2a15d8ea --- /dev/null +++ b/phpBB/phpbb/db/migration/data/v310/rename_too_long_indexes.php @@ -0,0 +1,38 @@ +<?php +/** +* +* This file is part of the phpBB Forum Software package. +* +* @copyright (c) phpBB Limited <https://www.phpbb.com> +* @license GNU General Public License, version 2 (GPL-2.0) +* +* For full copyright and license information, please see +* the docs/CREDITS.txt file. +* +*/ + +namespace phpbb\db\migration\data\v310; + +class rename_too_long_indexes extends \phpbb\db\migration\migration +{ + static public function depends_on() + { + return array('\phpbb\db\migration\data\v30x\release_3_0_0'); + } + + public function update_schema() + { + return array( + 'drop_keys' => array( + $this->table_prefix . 'search_wordmatch' => array( + 'unq_mtch', + ), + ), + 'add_unique_index' => array( + $this->table_prefix . 'search_wordmatch' => array( + 'un_mtch' => array('word_id', 'post_id', 'title_match'), + ), + ), + ); + } +} diff --git a/phpBB/phpbb/db/tools.php b/phpBB/phpbb/db/tools.php index ae0c695aa2..5d93eb8246 100644 --- a/phpBB/phpbb/db/tools.php +++ b/phpBB/phpbb/db/tools.php @@ -2104,7 +2104,7 @@ class tools $statements = array(); $table_prefix = substr(CONFIG_TABLE, 0, -6); // strlen(config) - if (strlen($table_name . $index_name) - strlen($table_prefix) > 24) + if (strlen($table_name . '_' . $index_name) - strlen($table_prefix) > 24) { $max_length = strlen($table_prefix) + 24; trigger_error("Index name '{$table_name}_$index_name' on table '$table_name' is too long. The maximum is $max_length characters.", E_USER_ERROR); |