Project

General

Profile

Bug #89169

Updated by Mathias Brodala over 4 years ago

Due to #88336 redirect URLs can now be longer. However, this also affects the @index_source@ index which includes @source_host@ and @source_path@ which now easily extends regular index limits: 

 <pre> 
 $ typo3cms d:u -vvv 
 No schema updates were performed for update types: 
 "field.add", "field.change", "table.add", "table.change" 

 The following errors occurred: 
 +---------------+-------------------------------------------------+-----------------------------+ 
 | Type            | SQL Statement                                     | Message                       | 
 +---------------+-------------------------------------------------+-----------------------------+ 
 | Change fields | ALTER TABLE `sys_redirect` CHANGE `source_path` | Specified key was too long; | 
 |                 | `source_path` VARCHAR(2048) DEFAULT '' NOT NULL | max key length is 3072        | 
 |                 |                                                   | bytes                         | 
 |                 |                                                   |                               | 
 +---------------+-------------------------------------------------+-----------------------------+ 
 </pre> 

 The collation is @utf_general_ci@ for the mentioned fields and table. 

 After manually dropping the @index_source@ index the change can Maybe "prefix indexes":https://stackoverflow.com/a/8747703/6812729 could be applied however: 

 <pre> 
 $ typo3cms d:u -vvv 
 The following database schema updates were performed: 
 +---------------+-------------------------------------------------+ 
 | Type            | SQL Statements                                    | 
 +---------------+-------------------------------------------------+ 
 | Add fields      | CREATE INDEX `index_source` ON `sys_redirect`     | 
 |                 | (source_host(80), source_path(80))                | 
 | Change fields | ALTER TABLE `sys_redirect` CHANGE `source_path` | 
 |                 | `source_path` VARCHAR(2048) DEFAULT '' NOT NULL | 
 +---------------+-------------------------------------------------+ 
 </pre> used.

Back