pgsql: Add support for hyperbolic functions, as well as log10().
Tom Lane <tgl@sss.pgh.pa.us>
From: Tom Lane <tgl@sss.pgh.pa.us>
To: pgsql-committers@lists.postgresql.org
Date: 2019-03-12T19:55:14Z
Lists: pgsql-hackers
Add support for hyperbolic functions, as well as log10(). The SQL:2016 standard adds support for the hyperbolic functions sinh(), cosh(), and tanh(). POSIX has long required libm to provide those functions as well as their inverses asinh(), acosh(), atanh(). Hence, let's just expose the libm functions to the SQL level. As with the trig functions, we only implement versions for float8, not numeric. For the moment, we'll assume that all platforms actually do have these functions; if experience teaches otherwise, some autoconf effort may be needed. SQL:2016 also adds support for base-10 logarithm, but with the function name log10(), whereas the name we've long used is log(). Add aliases named log10() for the float8 and numeric versions. Lætitia Avrot Discussion: https://postgr.es/m/CAB_COdguG22LO=rnxDQ2DW1uzv8aQoUzyDQNJjrR4k00XSgm5w@mail.gmail.com Branch ------ master Details ------- https://git.postgresql.org/pg/commitdiff/f1d85aa98ee71d9662309f6f0384b2f7f8f16f02 Modified Files -------------- doc/src/sgml/func.sgml | 107 ++++++++++++++++++++++- src/backend/utils/adt/float.c | 160 ++++++++++++++++++++++++++++++++++- src/include/catalog/catversion.h | 2 +- src/include/catalog/pg_proc.dat | 25 ++++++ src/test/regress/expected/float8.out | 37 ++++++++ src/test/regress/sql/float8.sql | 8 ++ 6 files changed, 333 insertions(+), 6 deletions(-)
Commits
-
Further adjust the tests for the hyperbolic functions.
- c43ecdee0fff 12.0 landed
-
Adjust the tests for the hyperbolic functions.
- c015f853bf59 12.0 landed
-
Rethink how to test the hyperbolic functions.
- c6f153dcfebc 12.0 landed
-
Add support for hyperbolic functions, as well as log10().
- f1d85aa98ee7 12.0 cited