Re: Numeric x^y for negative x

Поиск
Список
Период
Сортировка
От Tom Lane
Тема Re: Numeric x^y for negative x
Дата
Msg-id 2492411.1628266518@sss.pgh.pa.us
обсуждение исходный текст
Ответ на Re: Numeric x^y for negative x  (Dean Rasheed <dean.a.rasheed@gmail.com>)
Ответы Re: Numeric x^y for negative x  (Dean Rasheed <dean.a.rasheed@gmail.com>)
Список pgsql-hackers
Dean Rasheed <dean.a.rasheed@gmail.com> writes:
> So the "test for overflow by reverse-conversion" obviously isn't
> working as intended, and it's going through power_var_int() when it
> shouldn't. I don't think there's anything wrong with that code, so I
> think this is a compiler bug.

Yeah, looks like one.

> I guess the best thing to do is just test the value against
> PG_INT32_MIN/MAX, which is what int84() does. There are 2 other places
> in numeric.c that use similar code to check for int16/32 overflow, so
> it's possible that they're broken in the same way on that platform,
> but they aren't covered by the regression tests, so it's also possible
> that they're OK. Anyway, something like the attached seems likely to
> be safer.

Looks plausible by eyeball (I've not tested).

            regards, tom lane



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

Предыдущее
От: Dean Rasheed
Дата:
Сообщение: Re: Numeric x^y for negative x
Следующее
От: Japin Li
Дата:
Сообщение: Re: [BUG] wrong refresh when ALTER SUBSCRIPTION ADD/DROP PUBLICATION