Anton Voloshin <a(dot)voloshin(at)postgrespro(dot)ru> writes:
> in src/backend/utils/adt/formatting.c, in icu_convert_case() I see:
> if (status == U_BUFFER_OVERFLOW_ERROR)
> {
> /* try again with adjusted length */
> pfree(*buff_dest);
> *buff_dest = palloc(len_dest * sizeof(**buff_dest));
> ...
> Is there any reason why this should not be repalloc()?
repalloc is likely to be more expensive, since it implies copying
data which isn't helpful here. I think this code is fine as-is.
regards, tom lane