"Guido Notari" <gnotari@linkgroup.it> writes:
> I replaced the occurences of to_ascii with a custum function that calls
> to_ascii only on the result of a translate, which in turn converts some
> strange (russian?) characters to plain ascii.
Ooohhh ... looking at the source code shows that to_ascii processes one
byte too many, which would lead to clobbering the next byte of memory,
which would quite possibly cause your problem.
In 7.2.4, the bug is at line 114 of src/backend/utils/adt/ascii.c:
for (x = src; x <= src_end; x++)
should be
for (x = src; x < src_end; x++)
regards, tom lane