Re: Speedup usages of pg_*toa() functions

Andrew Gierth <andrew@tao11.riddles.org.uk>

From: Andrew Gierth <andrew@tao11.riddles.org.uk>
To: David Rowley <dgrowleyml@gmail.com>
Cc: PostgreSQL Developers <pgsql-hackers@lists.postgresql.org>, Andres Freund <andres@anarazel.de>
Date: 2020-06-11T06:52:51Z
Lists: pgsql-hackers
>>>>> "David" == David Rowley <dgrowleyml@gmail.com> writes:

 David> Pending any objections, I'd like to push both of these patches
 David> in the next few days to master.

For the second patch, can we take the opportunity to remove the
extraneous blank line at the top of pg_ltoa, and add the two missing
"extern"s in builtins.h for pg_ultoa_n and pg_ulltoa_n ?

 David> Anyone object to changing the signature of these functions in
 David> 0002, or have concerns about allocating the maximum memory that
 David> we might require in int8out()?

Changing the function signatures seems safe enough. The memory thing
only seems likely to be an issue if you allocate a lot of text strings
for bigint values without a context reset, and I'm not sure where that
would happen (maybe passing large bigint arrays to pl/perl or pl/python
would do it?)

-- 
Andrew (irc:RhodiumToad)



Commits

  1. Have pg_itoa, pg_ltoa and pg_lltoa return the length of the string

  2. Add missing extern keyword for a couple of numutils functions