Re: Question about integer out of range in function

Поиск
Список
Период
Сортировка
От Condor
Тема Re: Question about integer out of range in function
Дата
Msg-id 885da7b25586b07fb919b4c34222d4d9@stz-bg.com
обсуждение исходный текст
Ответ на Re: Question about integer out of range in function  (Tom Lane <tgl@sss.pgh.pa.us>)
Список pgsql-general
On 14-05-2021 17:42, Tom Lane wrote:
> Condor <condor@stz-bg.com> writes:
>>       new_time = fromtime * 1000; -- here is line 19
> 
> Are you entirely certain that you counted lines correctly?
> If new_time and fromtime are both declared bigint, and
> fromtime is on the order of
> 
> # select extract(epoch from now())::bigint;
>   extract
> ------------
>  1621003124
> (1 row)
> 
> then there's no way that that statement fails on integer overflow.
> 
> What I'm wondering about is the next line:
> 
>>       unix_time = (new_time + rand_int)::BIGINT;
> 
> You've not shown us the declaration of unix_time ...
> 
>             regards, tom lane


Sorry,
I was thinking I get the function from contrib and I think you guys know 
it.
unix_time is BIGINT but I make a few more changes and now can't restore 
old function to reproduce the problem.

I will try to recover the code later.

Regards,
HS



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

Предыдущее
От: Francisco Olarte
Дата:
Сообщение: Re: RETURNING, CTEs and TRANSACTION ISOLATION levels...
Следующее
От: frank picabia
Дата:
Сообщение: Empty tablespace directory after restore with psql -d dbname -f dump.sql