[TYPO3-dev] Compare in 4.3 fails
Steffen Ritter
info at rs-websystems.de
Sat Aug 22 12:02:53 CEST 2009
David Bruchmann schrieb:
> ----- Ursprüngliche Nachricht -----
> Von: Steffen Ritter <info at rs-websystems.de>
> Gesendet: Samstag, 22. August 2009 09:46:31
> An: typo3-dev at lists.netfielders.de
> CC:
> Betreff: [TYPO3-dev] Compare in 4.3 fails
>> Hey folks,
>> install tool wants to make the following two changes in database which
>> fail all the time because of to long indexes.
>> " Specified key was too long; max key length is 1000 bytes"
>>
>> What I'm wrong about?
>>
>>
>>
>> ALTER TABLE sys_refindex ADD KEY lookup_string (ref_table,ref_string);
>>
>> CREATE TABLE sys_registry (
>> uid int(11) unsigned NOT NULL auto_increment,
>> entry_namespace varchar(128) NOT NULL default '',
>> entry_key varchar(255) NOT NULL default '',
>> entry_value blob,
>> PRIMARY KEY (uid),
>> UNIQUE entry_identifier (entry_namespace,entry_key)
>> );
>>
>
> Hy Steffen,
>
> I never found something about that problem but I suppose that it occurs
> when the table is setup as utf-8 or another multibyte charset.
> UTF-8 also in mySQL is defined as variable byte-length-charset so
> assuming that each character uses 2 bytes the required space for your
> key would be 2x383 Byte plus 2 (because varchar adds 1 byte) = 768 byte.
> UNIQUE allows maximum 1000 byte - so it would be enough.
> But varchars can need more space for example 3 or 4 byte. In this case
> the key would be cut.
> I tested with values bigger than 255 bytes (255 needs already 256
> bytes), i.e. entry_key + uid = minimum 267 bytes - that was accepted. So
> the security-multiplier for the chars must be less than 4 but bigger
> than 2.
>
> Besst regards,
> David
Sure, database ist utf8,
but to me I think TYPO3 must ship "working" on utf8 databases ;)
Installool settings are correct, there is NO MultiplyDBFIeldSize so i
TYPO3 hast to change definitions...
More information about the TYPO3-dev
mailing list