Re: oid failures on Alpha solved

Поиск
Список
Период
Сортировка
От Tom Lane
Тема Re: oid failures on Alpha solved
Дата
Msg-id 3262.978199026@sss.pgh.pa.us
обсуждение исходный текст
Ответ на oid failures on Alpha solved  (Brent Verner <brent@rcfile.org>)
Ответы Re: oid failures on Alpha solved  (Tom Lane <tgl@sss.pgh.pa.us>)
Re: oid failures on Alpha solved  (Brent Verner <brent@rcfile.org>)
Список pgsql-hackers
Brent Verner <brent@rcfile.org> writes:
> formatting '-1040' with '%u'
>   snprintf = 18446744073709550576
>   sprintf  = 4294966256

> oidout() is where the offending call originates, FWIW.
>   snprintf(result, 12, "%u", o);

Hm.  This is clearly a bug in snprintf.  Did I understand you correctly
that configure is choosing backend/port/snprintf.c rather than one from
the C library?  If so, it should be straightforward to fix.

>   1) could the openssh code be a candidate to replace our version? It 
>      looks quite a bit more 'featureful', and I'd imagine it is about 
>      as safe as snprintf gets.

(a) what's the license?  (b) is it a lot bigger than the one we have?

>   2) do we _need_ oidout() to "%u", or could we "%lu" and fully take
>      advantage of the longer long on 64bit platforms?

OID is 4 bytes and %u is the correct format for it.  8-byte OIDs are a
can of worms that we will *not* open just now.
        regards, tom lane


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

Предыдущее
От: "Vadim Mikheev"
Дата:
Сообщение: Just fixed
Следующее
От: Tom Lane
Дата:
Сообщение: Re: oid failures on Alpha solved