Bjoern Metzdorf <bm@turtle-entertainment.de> writes:
> Is 8.0 just stricter or is this just a side effect
> of your fix for multibyte upper/lower problem for locale != C?
Both those statements are true.
> If 7.3 and 7.4 behaviour is intended, is there a way to let 8.0 behave
> the same?
I don't know what behavior you thought you were getting from upper/lower
on UTF-8 data in 7.4, but it was surely not correct. If you want to
duplicate that misbehavior, try SQL_ASCII with C locale. This does not
stop you from storing UTF-8 in your database, mind you --- it just
loses validation of encoding sequences and conversion to other schemes.
But having said that, upper() should work if the locale matches the
encoding. You might take the trouble to trace down exactly what data
value it's barfing on.
regards, tom lane