aboutsummaryrefslogtreecommitdiff
path: root/src/backend/utils/adt/float.c
Commit message (Collapse)AuthorAge
...
* pgindent run on all C files. Java run to follow. initdb/regressionBruce Momjian2001-10-25
| | | | tests pass.
* This adds unary plus capability. No grammar changes, per Tom's request.Bruce Momjian2001-06-07
| | | | Marko Kreen
* Accept and output '-Infinity' as well as 'Infinity', per long-agoTom Lane2001-06-02
| | | | | suggestion from Ross Reedstrom. Still needs work to make those symbols convert to actual IEEE infinities (on machines where such things exist).
* Paranoia about unordered comparisons in IEEE float math. If we areTom Lane2001-06-02
| | | | | | given values that compare as unordered, make sure we reply that they are equal, which is better than giving an arbitrary answer --- at least it doesn't depend on which one is passed as which arg.
* Ensure that btree sort ordering functions and boolean comparison operatorsTom Lane2001-05-03
| | | | | | | | | | give consistent results for all datatypes. Types float4, float8, and numeric were broken for NaN values; abstime, timestamp, and interval were broken for INVALID values; timetz was just plain broken (some possible pairs of values were neither < nor = nor >). Also clean up text, bpchar, varchar, and bit/varbit to eliminate duplicate code and thereby reduce the probability of similar inconsistencies arising in the future.
* pgindent run. Make it all clean.Bruce Momjian2001-03-22
|
* Change Copyright from PostgreSQL, Inc to PostgreSQL Global Development Group.Bruce Momjian2001-01-24
|
* Clean up bogosities in use of random(3) and srandom(3) --- do not assumeTom Lane2000-08-07
| | | | | | | that RAND_MAX applies to them, since it doesn't. Instead add a config.h parameter MAX_RANDOM_VALUE. This is currently set at 2^31-1 but could be auto-configured if that ever proves necessary. Also fix some outright bugs like calling srand() where srandom() is appropriate.
* Convert all remaining float4 and float8 functions to new fmgr style.Tom Lane2000-08-01
| | | | | | At this point I think it'd be possible to make float4 be pass-by-value without too much work --- and float8 too on machines where Datum is 8 bytes. Something to try when the mood strikes, anyway.
* Remove <values.h> inclusions, no-longer-needed MAXINT definitions.Tom Lane2000-07-28
|
* Revise aggregate functions per earlier discussions in pghackers.Tom Lane2000-07-17
| | | | | | | | | | | There's now only one transition value and transition function. NULL handling in aggregates is a lot cleaner. Also, use Numeric accumulators instead of integer accumulators for sum/avg on integer datatypes --- this avoids overflow at the cost of being a little slower. Implement VARIANCE() and STDDEV() aggregates in the standard backend. Also, enable new LIKE selectivity estimators by default. Unrelated change, but as long as I had to force initdb anyway...
* Remove a bunch of unused configure tests, in particular cases wherePeter Eisentraut2000-07-12
| | | | | | | | | | * the result is not recorded anywhere * the result is not used anywhere * the result is only used in some places, whereas others have been getting away with it * the result is used improperly Also make command line options handling a little better (e.g., --disable-locale, while redundant, should really still *dis*able).
* Functions on 'text' type updated to new fmgr style. 'text' isTom Lane2000-07-06
| | | | now TOAST-able.
* TOASTJan Wieck2000-07-03
| | | | | | | | WARNING: This is actually broken - we have self-deadlocks due to concurrent changes in buffer management. Vadim and me are working on it. Jan
* Big warnings cleanup for Solaris/GCC. Down to about 40 now, butPeter Eisentraut2000-06-14
| | | | | | | | | | | we'll get there one day. Use `cat' to create aclocal.m4, not `aclocal'. Some people don't have automake installed. Only run the autoconf rule in the top-level GNUmakefile if the invoker specified `make configure', don't run it automatically because of CVS timestamp skew.
* Another batch of fmgr updates. I think I have gotten all old-styleTom Lane2000-06-13
| | | | | functions that take pass-by-value datatypes. Should be ready for port testing ...
* Mark functions as static and ifdef NOT_USED as appropriate.Bruce Momjian2000-06-08
|
* Latest round of fmgr updates. All functions with bool,char, or int2Tom Lane2000-06-05
| | | | | | | inputs have been converted to newstyle. This should go a long way towards fixing our portability problems with platforms where char and short parameters are passed differently from int-width parameters. Still more to do for the Alpha port however.
* Ye-old pgindent run. Same 4-space tabs.Bruce Momjian2000-04-12
|
* Add transcendental math functions (sine, cosine, etc)Thomas G. Lockhart2000-04-07
| | | | | | | | | | | | | | | | Add a random number generator and seed setter (random(), SET SEED) Fix up the interval*float8 math to carry partial months into the time field. Add float8*interval so we have symmetry in the available math. Fix the parser and define.c to accept SQL92 types as field arguments. Fix the parser to accept SQL92 types for CREATE TYPE, etc. This is necessary to allow... Bit/varbit support in contrib/bit cleaned up to compile and load cleanly. Still needs some work before final release. Implement the "SOME" keyword as a synonym for "ANY" per SQL92. Implement ascii(text), ichar(int4), repeat(text,int4) to help support the ODBC driver. Enable the TRUNCATE() function mapping in the ODBC driver.
* Float-to-int conversion functions should return NULL when given NULLTom Lane2000-03-23
| | | | input, not throw a gratuitous elog().
* Implement column aliases on views "CREATE VIEW name (collist)".Thomas G. Lockhart2000-03-14
| | | | | | | | | | | | | | | | | | Implement TIME WITH TIME ZONE type (timetz internal type). Remap length() for character strings to CHAR_LENGTH() for SQL92 and to remove the ambiguity with geometric length() functions. Keep length() for character strings for backward compatibility. Shrink stored views by removing internal column name list from visible rte. Implement min(), max() for time and timetz data types. Implement conversion of TIME to INTERVAL. Implement abs(), mod(), fac() for the int8 data type. Rename some math functions to generic names: round(), sqrt(), cbrt(), pow(), etc. Rename NUMERIC power() function to pow(). Fix int2 factorial to calculate result in int4. Enhance the Oracle compatibility function translate() to work with string arguments (from Edwin Ramirez). Modify pg_proc system table to remove OID holes.
* Add:Bruce Momjian2000-01-26
| | | | | | * Portions Copyright (c) 1996-2000, PostgreSQL, Inc to all files copyright Regents of Berkeley. Man, that's a lot of files.
* Fixed all elog related warnings, as well as a few others.Peter Eisentraut2000-01-15
|
* Finally found a platform which has finite() but nonetheless sets errnoTom Lane1999-12-20
| | | | | | | rather than returning a NaN for bogus input to pow(). Namely, HPUX 10.20. I think this is sufficient evidence for what I thought all along, which is that the float.c code *must* look at errno whether finite() exists or not.
* Replace float.c's #ifdef finite check with a proper autoconf check, so itTom Lane1999-10-02
| | | | works if finite() is a function. Patch from Christof Petig.
* Modify nodeAgg.c so that no rows are returned for a GROUP BYTom Lane1999-09-26
| | | | | | | | with no input rows, per pghackers discussions around 7/22/99. Clean up a bunch of ugly coding while at it; remove redundant re-lookup of aggregate info at start of each new GROUP. Arrange to pfree intermediate values when they are pass-by-ref types, so that aggregates on pass-by-ref types no longer eat memory. This takes care of a couple of TODO items...
* values.h patch from Alex HowanskyBruce Momjian1999-09-21
|
* Move some system includes into c.h, and remove duplicates.Bruce Momjian1999-07-17
|
* Update #include cleanupsBruce Momjian1999-07-16
|
* Clean up #include in /include directory. Add scripts for checking includes.Bruce Momjian1999-07-15
|
* Cleanup of /include #include's, for 6.6 only.Bruce Momjian1999-07-14
|
* More cpu cleanups, only for 6.6.Bruce Momjian1999-07-13
|
* pgindent run over code.Bruce Momjian1999-05-25
|
* Portability patches for HPUX 11 and Unixware in configureTom Lane1999-04-20
| | | | | | and related files. Also remove float.c's gratuitous redeclaration of isinf() ... looks like there are more decls in there that ought to be in config.h, but I'll leave well enough alone for now ...
* Change my-function-name-- to my_function_name, and optimizer renames.Bruce Momjian1999-02-13
|
* Improper addition of NaN/Infinity recognition to float8in()Tom Lane1999-01-24
| | | | | | | was causing it not to detect out-of-range float values, as evidenced by failure of float8 regression test. I corrected that logic and also modified expected float8 results to account for new error message generated for out-of-range inputs.
* FOR UPDATE is in parser & rules.Vadim B. Mikheev1999-01-21
|
* Fix for missing NAN.Bruce Momjian1999-01-17
|
* Handle "NaN" and "Infinity" for input values.Thomas G. Lockhart1999-01-10
| | | | | | I think NAN is already guaranteed to be there from Jan's work on NUMERIC, but perhaps HUGE_VAL needs some #ifndef's in the same place. Should also include "-Infinity" as -HUGE_VAL sometime; not there yet.
* Change exp() behavior to generate error on underflow ratherTom Lane1998-11-29
| | | | | | than silently returning zero on some machines. Correct float8 regress test to agree. Also fix pow() overflow/underflow check to work correctly on HPUX.
* Add text<->float8 and text<->float4 conversion functions.Thomas G. Lockhart1998-11-17
| | | | | This will fix the problem reported by Jose' Soares when trying to cast a float to text.
* OK, folks, here is the pgindent output.Bruce Momjian1998-09-01
|
* Renaming cleanup, no pgindent yet.Bruce Momjian1998-09-01
|
* From: Ryan Kirkpatrick <rkirkpat@nag.cs.colorado.edu>Marc G. Fournier1998-04-27
| | | | | | | | | | Ok, I have finally gotten all of the defines for Dec/Alpha and Linux/Alpha sorted out as Marc asked. There is no longer any need for '-Dalpha' or '-Dlinuxalpha' in either the Dec/Alpha or the Linux/Alpha template files (./src/template/{alpha,linuxalpha}). I have replaced every instance of 'alpha' or '__alpha__' with '__alpha', as that appears to be the common symbol between C compilers on both operating systems (RH4.2 & DecUnix 4.0b) for alpha.
* More work in the right direction on linux/alphaMarc G. Fournier1998-04-12
| | | | From: Ryan Kirkpatrick <rkirkpat@nag.cs.colorado.edu>
* pgindent run before 6.3 release, with Thomas' requested changes.Bruce Momjian1998-02-26
|
* Move all the isinf() stuff from float.c to isinf.c, and build it according toMarc G. Fournier1998-02-02
| | | | configure vs port specific #ifdef's...
* Various cleanups for the i386_solaris environmentMarc G. Fournier1998-01-13
|
* Change some ABORTS to ERROR. Add line number when COPY Failure.Bruce Momjian1998-01-05
|