BUG #3932: utf-8 and upper()/lower(): PANIC: ERRORDATA_STACK_SIZE exceeded

Поиск
Список
Период
Сортировка
От Florian Wunderlich
Тема BUG #3932: utf-8 and upper()/lower(): PANIC: ERRORDATA_STACK_SIZE exceeded
Дата
Msg-id 200802051238.m15CcNMa095728@wwwmaster.postgresql.org
обсуждение исходный текст
Ответы Re: BUG #3932: utf-8 and upper()/lower(): PANIC: ERRORDATA_STACK_SIZE exceeded  (Alvaro Herrera <alvherre@commandprompt.com>)
Список pgsql-bugs
The following bug has been logged online:

Bug reference:      3932
Logged by:          Florian Wunderlich
Email address:      fwunderlich@factor3.de
PostgreSQL version: 8.2.6
Operating system:   Debian unstable
Description:        utf-8 and upper()/lower(): PANIC: ERRORDATA_STACK_SIZE
exceeded
Details:

- input file in encoding iso-8859-1:

set client_encoding='iso-8859-1';
select upper('ä'), lower('Ä');

(note: the argument to upper is a lower case a umlaut, while the argument to
lower is an upper case a umlaut)

- database "iso" with encoding iso-8859-1,
  database "utf" with encoding utf-8,
  both in a cluster with locale=de_DE


The command

  psql iso < input

yields the correct output (upper case a umlaut, lower case a umlaut).


The command

  psql utf < input

yields

PANIK: ERRORDATA_STACK_SIZE exceeded.
server closed the connection unexpectedly
        This probably means the server terminated abnormally
        before or while processing the request.
connection to server was lost


The log shows:

ERROR:  invalid byte sequence for encoding "UTF8": 0xe384
HINT:  This error can also happen if the byte sequence does not match the
encoding expected by the server, which is controlled by "client_encoding".

then the same error four times but with 0xfc.


Doing the exact same thing with an input file with encoding utf-8 (with
client_encoding replaced accordingly) again works fine with the iso
database, but yields a lower case a umlaut for upper() and nothing for the
lower() function for the utf database.


Thus, it would seem that the upper() and lower() functions do not work at
all for databases with encoding utf-8 and non-US-ASCII input.

В списке pgsql-bugs по дате отправления:

Предыдущее
От: "Rafael Aguilar"
Дата:
Сообщение: BUG #3931: problems in the install process
Следующее
От: Alvaro Herrera
Дата:
Сообщение: Re: BUG #3932: utf-8 and upper()/lower(): PANIC: ERRORDATA_STACK_SIZE exceeded