[TYPO3-core] RFC: Bug #5088: cache is not saved properly because of charset conflict in the database

Michael Stucki michael at typo3.org
Mon Apr 2 00:43:56 CEST 2007

Hi Martin,

I was waiting for more comments about this topic, but unfortunately nobody
seems to be interested. To me it is an important bug, so I want to have
this problem solved before 4.1.1.

> But that's a stupid setup. Mysql (and other DBs) will translate the
> content from the server charset to the client charset. That's fine and
> good and will work for sane setups.
> The described setup sends latin1 data as utf8 into the DB which stores
> them as utf8 (at least for cache_hash.content). This is nonsense.

If you are not using forceCharset=utf8 and you run the BE in either English
or German, then the backend will be encoded with latin1 because this is
(still) their default setting.

So I think that the probability of having such a problem is pretty high.

> What I see here is that you must follow one rule: if you change the
> charset somewhere - clear ALL caches! And read the docs before you fiddle
> with SET NAMES.

What users will find in the first place is probably this:

> But I agree that we should take more care when decide to store data as
> TEXT (charset dependent) or as BLOB (charset independent). I have to admit
> I was part of the lets-get-rid-of-the-BLOB crowed but I think we should
> think more before simply revert those changes.

I was also supporting this idea - but I was also not aware of this problem
in this - pretty special - environment. Anyway, since there is no charset
handling in sys_template, we should fix this quickly:

1) Change the field back to mediumblob
2) Add a migration wizard (not only for sys_template)

> The case above is no reason for me to change anything, because the setup
> is broken. Of course we need to check what the impacts are for correct
> setups.

I don't think that the setup is broken, but please ask here for details:

- michael
Use a newsreader! Check out

More information about the TYPO3-team-core mailing list