Re: Speedup usages of pg_*toa() functions
От | Andrew Gierth |
---|---|
Тема | Re: Speedup usages of pg_*toa() functions |
Дата | |
Msg-id | 874krk6ppv.fsf@news-spur.riddles.org.uk обсуждение исходный текст |
Ответ на | Re: Speedup usages of pg_*toa() functions (Ranier Vilela <ranier.vf@gmail.com>) |
Ответы |
Re: Speedup usages of pg_*toa() functions
|
Список | pgsql-hackers |
>>>>> "Ranier" == Ranier Vilela <ranier.vf@gmail.com> writes: Ranier> Where " ends up with two copies of pg_ultoa_n inlined into it", Ranier> in this simplified example? The two references to sprintf are both inlined copies of your pg_utoa. Ranier> (b) I call this tail cut, I believe it saves time, for sure. You seem to have missed the point that the pg_ultoa_n / pg_ulltoa_n functions DO NOT ADD A TRAILING NUL. Which means that pg_ltoa / pg_lltoa can't just tail call them, since they must add the NUL after. Ranier> Regarding bugs: Ranier> (c) your version don't check size of a var, when pg_ulltoa_n Ranier> warning about "least MAXINT8LEN bytes." Ranier> So in theory, I could blow it up, by calling pg_lltoa. No. Callers of pg_lltoa are required to provide a buffer of at least MAXINT8LEN+1 bytes. -- Andrew.
В списке pgsql-hackers по дате отправления: