diff --git a/src/test/regress/expected/float8-alpha-osf.out b/src/test/regress/expected/float8-alpha-osf.out new file mode 100644 index 0000000000000000000000000000000000000000..68a9dd53f355fcebe2b03f9530e4e751fce340fa --- /dev/null +++ b/src/test/regress/expected/float8-alpha-osf.out @@ -0,0 +1,234 @@ +QUERY: CREATE TABLE FLOAT8_TBL(f1 float8); +QUERY: INSERT INTO FLOAT8_TBL(f1) VALUES ('0.0'); +QUERY: INSERT INTO FLOAT8_TBL(f1) VALUES ('1004.30'); +QUERY: INSERT INTO FLOAT8_TBL(f1) VALUES ('-34.84'); +QUERY: INSERT INTO FLOAT8_TBL(f1) VALUES ('1.2345678901234e+200'); +QUERY: INSERT INTO FLOAT8_TBL(f1) VALUES ('1.2345678901234e-200'); +QUERY: SELECT '' AS five, FLOAT8_TBL.*; +five|f1 +----+-------------------- + |0 + |1004.3 + |-34.84 + |1.2345678901234e+200 + |1.2345678901234e-200 +(5 rows) + +QUERY: SELECT '' AS four, f.* FROM FLOAT8_TBL f WHERE f.f1 <> '1004.3'; +four|f1 +----+-------------------- + |0 + |-34.84 + |1.2345678901234e+200 + |1.2345678901234e-200 +(4 rows) + +QUERY: SELECT '' AS one, f.* FROM FLOAT8_TBL f WHERE f.f1 = '1004.3'; +one| f1 +---+------ + |1004.3 +(1 row) + +QUERY: SELECT '' AS three, f.* FROM FLOAT8_TBL f WHERE '1004.3' > f.f1; +three| f1 +-----+-------------------- + | 0 + | -34.84 + |1.2345678901234e-200 +(3 rows) + +QUERY: SELECT '' AS three, f.* FROM FLOAT8_TBL f WHERE f.f1 < '1004.3'; +three| f1 +-----+-------------------- + | 0 + | -34.84 + |1.2345678901234e-200 +(3 rows) + +QUERY: SELECT '' AS four, f.* FROM FLOAT8_TBL f WHERE '1004.3' >= f.f1; +four| f1 +----+-------------------- + | 0 + | 1004.3 + | -34.84 + |1.2345678901234e-200 +(4 rows) + +QUERY: SELECT '' AS four, f.* FROM FLOAT8_TBL f WHERE f.f1 <= '1004.3'; +four| f1 +----+-------------------- + | 0 + | 1004.3 + | -34.84 + |1.2345678901234e-200 +(4 rows) + +QUERY: SELECT '' AS three, f.f1, f.f1 * '-10' AS x + FROM FLOAT8_TBL f + WHERE f.f1 > '0.0'; +three|f1 |x +-----+--------------------+--------------------- + |1004.3 |-10043 + |1.2345678901234e+200|-1.2345678901234e+201 + |1.2345678901234e-200|-1.2345678901234e-199 +(3 rows) + +QUERY: SELECT '' AS three, f.f1, f.f1 + '-10' AS x + FROM FLOAT8_TBL f + WHERE f.f1 > '0.0'; +three|f1 |x +-----+--------------------+-------------------- + |1004.3 |994.3 + |1.2345678901234e+200|1.2345678901234e+200 + |1.2345678901234e-200|-10 +(3 rows) + +QUERY: SELECT '' AS three, f.f1, f.f1 / '-10' AS x + FROM FLOAT8_TBL f + WHERE f.f1 > '0.0'; +three|f1 |x +-----+--------------------+--------------------- + |1004.3 |-100.43 + |1.2345678901234e+200|-1.2345678901234e+199 + |1.2345678901234e-200|-1.2345678901234e-201 +(3 rows) + +QUERY: SELECT '' AS three, f.f1, f.f1 - '-10' AS x + FROM FLOAT8_TBL f + WHERE f.f1 > '0.0'; +three|f1 |x +-----+--------------------+-------------------- + |1004.3 |1014.3 + |1.2345678901234e+200|1.2345678901234e+200 + |1.2345678901234e-200|10 +(3 rows) + +QUERY: SELECT '' AS one, f.f1 ^ '2.0' AS square_f1 + FROM FLOAT8_TBL f where f.f1 = '1004.3'; +one| square_f1 +---+---------- + |1008618.49 +(1 row) + +QUERY: SELECT '' AS five, f.f1, @f.f1 AS abs_f1 + FROM FLOAT8_TBL f; +five|f1 |abs_f1 +----+--------------------+-------------------- + |0 |0 + |1004.3 |1004.3 + |-34.84 |34.84 + |1.2345678901234e+200|1.2345678901234e+200 + |1.2345678901234e-200|1.2345678901234e-200 +(5 rows) + +QUERY: SELECT '' AS five, f.f1, %f.f1 AS trunc_f1 + FROM FLOAT8_TBL f; +five|f1 |trunc_f1 +----+--------------------+-------------------- + |0 |0 + |1004.3 |1004 + |-34.84 |-34 + |1.2345678901234e+200|1.2345678901234e+200 + |1.2345678901234e-200|0 +(5 rows) + +QUERY: SELECT '' AS five, f.f1, f.f1 % AS round_f1 + FROM FLOAT8_TBL f; +five|f1 |round_f1 +----+--------------------+-------------------- + |0 |0 + |1004.3 |1004 + |-34.84 |-35 + |1.2345678901234e+200|1.2345678901234e+200 + |1.2345678901234e-200|0 +(5 rows) + +QUERY: SELECT '' AS three, f.f1, |/f.f1 AS sqrt_f1 + FROM FLOAT8_TBL f + WHERE f.f1 > '0.0'; +three|f1 |sqrt_f1 +-----+--------------------+--------------------- + |1004.3 |31.6906926399535 + |1.2345678901234e+200|1.11111110611109e+100 + |1.2345678901234e-200|1.11111110611109e-100 +(3 rows) + +QUERY: SELECT '' AS three, f.f1, : ( ; f.f1) AS exp_ln_f1 + FROM FLOAT8_TBL f + WHERE f.f1 > '0.0'; +three|f1 |exp_ln_f1 +-----+--------------------+--------------------- + |1004.3 |1004.3 + |1.2345678901234e+200|1.23456789012338e+200 + |1.2345678901234e-200|1.23456789012339e-200 +(3 rows) + +QUERY: SELECT '' AS five, f.f1, ||/f.f1 AS cbrt_f1 FROM FLOAT8_TBL f; +five|f1 |cbrt_f1 +----+--------------------+-------------------- + |0 |0 + |1004.3 |10.014312837827 + |-34.84 |-3.26607421344208 + |1.2345678901234e+200|4.97933859234765e+66 + |1.2345678901234e-200|2.3112042409018e-67 +(5 rows) + +QUERY: SELECT '' AS five, FLOAT8_TBL.*; +five|f1 +----+-------------------- + |0 + |1004.3 + |-34.84 + |1.2345678901234e+200 + |1.2345678901234e-200 +(5 rows) + +QUERY: UPDATE FLOAT8_TBL + SET f1 = FLOAT8_TBL.f1 * '-1' + WHERE FLOAT8_TBL.f1 > '0.0'; +QUERY: SELECT '' AS bad, f.f1 * '1e200' from FLOAT8_TBL f; +ERROR: floating point exception! The last floating point operation either exceeded legal ranges or was a divide by zero +QUERY: SELECT '' AS bad, f.f1 ^ '1e200' from FLOAT8_TBL f; +ERROR: pow() result is out of range +QUERY: SELECT '' AS bad, (; (f.f1)) from FLOAT8_TBL f where f.f1 = '0.0' ; +ERROR: can't take log of zero +QUERY: SELECT '' AS bad, (; (f.f1)) from FLOAT8_TBL f where f.f1 < '0.0' ; +ERROR: can't take log of a negative number +QUERY: SELECT '' AS bad, : (f.f1) from FLOAT8_TBL f; +ERROR: exp() result is out of range +QUERY: SELECT '' AS bad, f.f1 / '0.0' from FLOAT8_TBL f; +ERROR: float8div: divide by zero error +QUERY: SELECT '' AS five, FLOAT8_TBL.*; +five|f1 +----+--------------------- + |0 + |-34.84 + |-1004.3 + |-1.2345678901234e+200 + |-1.2345678901234e-200 +(5 rows) + +QUERY: INSERT INTO FLOAT8_TBL(f1) VALUES ('10e400'); +ERROR: Input '10e400' is out of range for float8 +QUERY: INSERT INTO FLOAT8_TBL(f1) VALUES ('-10e400'); +ERROR: Input '-10e400' is out of range for float8 +QUERY: INSERT INTO FLOAT8_TBL(f1) VALUES ('10e-400'); +ERROR: Input '10e-400' is out of range for float8 +QUERY: INSERT INTO FLOAT8_TBL(f1) VALUES ('-10e-400'); +ERROR: Input '-10e-400' is out of range for float8 +QUERY: DELETE FROM FLOAT8_TBL; +QUERY: INSERT INTO FLOAT8_TBL(f1) VALUES ('0.0'); +QUERY: INSERT INTO FLOAT8_TBL(f1) VALUES ('-34.84'); +QUERY: INSERT INTO FLOAT8_TBL(f1) VALUES ('-1004.30'); +QUERY: INSERT INTO FLOAT8_TBL(f1) VALUES ('-1.2345678901234e+200'); +QUERY: INSERT INTO FLOAT8_TBL(f1) VALUES ('-1.2345678901234e-200'); +QUERY: SELECT '' AS five, FLOAT8_TBL.*; +five|f1 +----+--------------------- + |0 + |-34.84 + |-1004.3 + |-1.2345678901234e+200 + |-1.2345678901234e-200 +(5 rows) + diff --git a/src/test/regress/expected/int2-alpha-osf.out b/src/test/regress/expected/int2-alpha-osf.out new file mode 100644 index 0000000000000000000000000000000000000000..c35f1737ebe86db7de1aef9ccb397d7a64b802f6 --- /dev/null +++ b/src/test/regress/expected/int2-alpha-osf.out @@ -0,0 +1,206 @@ +QUERY: CREATE TABLE INT2_TBL(f1 int2); +QUERY: INSERT INTO INT2_TBL(f1) VALUES ('0'); +QUERY: INSERT INTO INT2_TBL(f1) VALUES ('1234'); +QUERY: INSERT INTO INT2_TBL(f1) VALUES ('-1234'); +QUERY: INSERT INTO INT2_TBL(f1) VALUES ('34.5'); +ERROR: pg_atoi: error in "34.5": can't parse ".5" +QUERY: INSERT INTO INT2_TBL(f1) VALUES ('32767'); +QUERY: INSERT INTO INT2_TBL(f1) VALUES ('-32767'); +QUERY: INSERT INTO INT2_TBL(f1) VALUES ('100000'); +ERROR: pg_atoi: error reading "100000": Result too large +QUERY: INSERT INTO INT2_TBL(f1) VALUES ('asdf'); +ERROR: pg_atoi: error in "asdf": can't parse "asdf" +QUERY: SELECT '' AS five, INT2_TBL.*; +five| f1 +----+------ + | 0 + | 1234 + | -1234 + | 32767 + |-32767 +(5 rows) + +QUERY: SELECT '' AS four, i.* FROM INT2_TBL i WHERE i.f1 <> '0'::int2; +four| f1 +----+------ + | 1234 + | -1234 + | 32767 + |-32767 +(4 rows) + +QUERY: SELECT '' AS four, i.* FROM INT2_TBL i WHERE i.f1 <> '0'::int4; +four| f1 +----+------ + | 1234 + | -1234 + | 32767 + |-32767 +(4 rows) + +QUERY: SELECT '' AS one, i.* FROM INT2_TBL i WHERE i.f1 = '0'::int2; +one|f1 +---+-- + | 0 +(1 row) + +QUERY: SELECT '' AS one, i.* FROM INT2_TBL i WHERE i.f1 = '0'::int4; +one|f1 +---+-- + | 0 +(1 row) + +QUERY: SELECT '' AS two, i.* FROM INT2_TBL i WHERE i.f1 < '0'::int2; +two| f1 +---+------ + | -1234 + |-32767 +(2 rows) + +QUERY: SELECT '' AS two, i.* FROM INT2_TBL i WHERE i.f1 < '0'::int4; +two| f1 +---+------ + | -1234 + |-32767 +(2 rows) + +QUERY: SELECT '' AS three, i.* FROM INT2_TBL i WHERE i.f1 <= '0'::int2; +three| f1 +-----+------ + | 0 + | -1234 + |-32767 +(3 rows) + +QUERY: SELECT '' AS three, i.* FROM INT2_TBL i WHERE i.f1 <= '0'::int4; +three| f1 +-----+------ + | 0 + | -1234 + |-32767 +(3 rows) + +QUERY: SELECT '' AS two, i.* FROM INT2_TBL i WHERE i.f1 > '0'::int2; +two| f1 +---+----- + | 1234 + |32767 +(2 rows) + +QUERY: SELECT '' AS two, i.* FROM INT2_TBL i WHERE i.f1 > '0'::int4; +two| f1 +---+----- + | 1234 + |32767 +(2 rows) + +QUERY: SELECT '' AS three, i.* FROM INT2_TBL i WHERE i.f1 >= '0'::int2; +three| f1 +-----+----- + | 0 + | 1234 + |32767 +(3 rows) + +QUERY: SELECT '' AS three, i.* FROM INT2_TBL i WHERE i.f1 >= '0'::int4; +three| f1 +-----+----- + | 0 + | 1234 + |32767 +(3 rows) + +QUERY: SELECT '' AS one, i.* FROM INT2_TBL i WHERE (i.f1 % '2'::int2) = '1'::int2; +one| f1 +---+----- + |32767 +(1 row) + +QUERY: SELECT '' AS three, i.* FROM INT2_TBL i WHERE (i.f1 % '2'::int4) = '0'::int2; +three| f1 +-----+----- + | 0 + | 1234 + |-1234 +(3 rows) + +QUERY: SELECT '' AS five, i.f1, i.f1 * '2'::int2 AS x FROM INT2_TBL i; +five| f1| x +----+------+----- + | 0| 0 + | 1234| 2468 + | -1234|-2468 + | 32767| -2 + |-32767| 2 +(5 rows) + +QUERY: SELECT '' AS five, i.f1, i.f1 * '2'::int4 AS x FROM INT2_TBL i; +five| f1| x +----+------+------ + | 0| 0 + | 1234| 2468 + | -1234| -2468 + | 32767| 65534 + |-32767|-65534 +(5 rows) + +QUERY: SELECT '' AS five, i.f1, i.f1 + '2'::int2 AS x FROM INT2_TBL i; +five| f1| x +----+------+------ + | 0| 2 + | 1234| 1236 + | -1234| -1232 + | 32767|-32767 + |-32767|-32765 +(5 rows) + +QUERY: SELECT '' AS five, i.f1, i.f1 + '2'::int4 AS x FROM INT2_TBL i; +five| f1| x +----+------+------ + | 0| 2 + | 1234| 1236 + | -1234| -1232 + | 32767| 32769 + |-32767|-32765 +(5 rows) + +QUERY: SELECT '' AS five, i.f1, i.f1 - '2'::int2 AS x FROM INT2_TBL i; +five| f1| x +----+------+----- + | 0| -2 + | 1234| 1232 + | -1234|-1236 + | 32767|32765 + |-32767|32767 +(5 rows) + +QUERY: SELECT '' AS five, i.f1, i.f1 - '2'::int4 AS x FROM INT2_TBL i; +five| f1| x +----+------+------ + | 0| -2 + | 1234| 1232 + | -1234| -1236 + | 32767| 32765 + |-32767|-32769 +(5 rows) + +QUERY: SELECT '' AS five, i.f1, i.f1 / '2'::int2 AS x FROM INT2_TBL i; +five| f1| x +----+------+------ + | 0| 0 + | 1234| 617 + | -1234| -617 + | 32767| 16383 + |-32767|-16383 +(5 rows) + +QUERY: SELECT '' AS five, i.f1, i.f1 / '2'::int4 AS x FROM INT2_TBL i; +five| f1| x +----+------+------ + | 0| 0 + | 1234| 617 + | -1234| -617 + | 32767| 16383 + |-32767|-16383 +(5 rows) + diff --git a/src/test/regress/expected/int4-alpha-osf.out b/src/test/regress/expected/int4-alpha-osf.out new file mode 100644 index 0000000000000000000000000000000000000000..5b55ab7ea106cdd3e1740eaf9647046e0adc0442 --- /dev/null +++ b/src/test/regress/expected/int4-alpha-osf.out @@ -0,0 +1,302 @@ +QUERY: CREATE TABLE INT4_TBL(f1 int4); +QUERY: INSERT INTO INT4_TBL(f1) VALUES ('0'); +QUERY: INSERT INTO INT4_TBL(f1) VALUES ('123456'); +QUERY: INSERT INTO INT4_TBL(f1) VALUES ('-123456'); +QUERY: INSERT INTO INT4_TBL(f1) VALUES ('34.5'); +ERROR: pg_atoi: error in "34.5": can't parse ".5" +QUERY: INSERT INTO INT4_TBL(f1) VALUES ('2147483647'); +QUERY: INSERT INTO INT4_TBL(f1) VALUES ('-2147483647'); +QUERY: INSERT INTO INT4_TBL(f1) VALUES ('1000000000000'); +ERROR: pg_atoi: error reading "1000000000000": Result too large +QUERY: INSERT INTO INT4_TBL(f1) VALUES ('asdf'); +ERROR: pg_atoi: error in "asdf": can't parse "asdf" +QUERY: SELECT '' AS five, INT4_TBL.*; +five| f1 +----+----------- + | 0 + | 123456 + | -123456 + | 2147483647 + |-2147483647 +(5 rows) + +QUERY: SELECT '' AS four, i.* FROM INT4_TBL i WHERE i.f1 <> '0'::int2; +four| f1 +----+----------- + | 123456 + | -123456 + | 2147483647 + |-2147483647 +(4 rows) + +QUERY: SELECT '' AS four, i.* FROM INT4_TBL i WHERE i.f1 <> '0'::int4; +four| f1 +----+----------- + | 123456 + | -123456 + | 2147483647 + |-2147483647 +(4 rows) + +QUERY: SELECT '' AS one, i.* FROM INT4_TBL i WHERE i.f1 = '0'::int2; +one|f1 +---+-- + | 0 +(1 row) + +QUERY: SELECT '' AS one, i.* FROM INT4_TBL i WHERE i.f1 = '0'::int4; +one|f1 +---+-- + | 0 +(1 row) + +QUERY: SELECT '' AS two, i.* FROM INT4_TBL i WHERE i.f1 < '0'::int2; +two| f1 +---+----------- + | -123456 + |-2147483647 +(2 rows) + +QUERY: SELECT '' AS two, i.* FROM INT4_TBL i WHERE i.f1 < '0'::int4; +two| f1 +---+----------- + | -123456 + |-2147483647 +(2 rows) + +QUERY: SELECT '' AS three, i.* FROM INT4_TBL i WHERE i.f1 <= '0'::int2; +three| f1 +-----+----------- + | 0 + | -123456 + |-2147483647 +(3 rows) + +QUERY: SELECT '' AS three, i.* FROM INT4_TBL i WHERE i.f1 <= '0'::int4; +three| f1 +-----+----------- + | 0 + | -123456 + |-2147483647 +(3 rows) + +QUERY: SELECT '' AS two, i.* FROM INT4_TBL i WHERE i.f1 > '0'::int2; +two| f1 +---+---------- + | 123456 + |2147483647 +(2 rows) + +QUERY: SELECT '' AS two, i.* FROM INT4_TBL i WHERE i.f1 > '0'::int4; +two| f1 +---+---------- + | 123456 + |2147483647 +(2 rows) + +QUERY: SELECT '' AS three, i.* FROM INT4_TBL i WHERE i.f1 >= '0'::int2; +three| f1 +-----+---------- + | 0 + | 123456 + |2147483647 +(3 rows) + +QUERY: SELECT '' AS three, i.* FROM INT4_TBL i WHERE i.f1 >= '0'::int4; +three| f1 +-----+---------- + | 0 + | 123456 + |2147483647 +(3 rows) + +QUERY: SELECT '' AS one, i.* FROM INT4_TBL i WHERE (i.f1 % '2'::int2) = '1'::int2; +one| f1 +---+---------- + |2147483647 +(1 row) + +QUERY: SELECT '' AS three, i.* FROM INT4_TBL i WHERE (i.f1 % '2'::int4) = '0'::int2; +three| f1 +-----+------- + | 0 + | 123456 + |-123456 +(3 rows) + +QUERY: SELECT '' AS five, i.f1, i.f1 * '2'::int2 AS x FROM INT4_TBL i; +five| f1| x +----+-----------+------- + | 0| 0 + | 123456| 246912 + | -123456|-246912 + | 2147483647| -2 + |-2147483647| 2 +(5 rows) + +QUERY: SELECT '' AS five, i.f1, i.f1 * '2'::int4 AS x FROM INT4_TBL i; +five| f1| x +----+-----------+------- + | 0| 0 + | 123456| 246912 + | -123456|-246912 + | 2147483647| -2 + |-2147483647| 2 +(5 rows) + +QUERY: SELECT '' AS five, i.f1, i.f1 + '2'::int2 AS x FROM INT4_TBL i; +five| f1| x +----+-----------+----------- + | 0| 2 + | 123456| 123458 + | -123456| -123454 + | 2147483647|-2147483647 + |-2147483647|-2147483645 +(5 rows) + +QUERY: SELECT '' AS five, i.f1, i.f1 + '2'::int4 AS x FROM INT4_TBL i; +five| f1| x +----+-----------+----------- + | 0| 2 + | 123456| 123458 + | -123456| -123454 + | 2147483647|-2147483647 + |-2147483647|-2147483645 +(5 rows) + +QUERY: SELECT '' AS five, i.f1, i.f1 - '2'::int2 AS x FROM INT4_TBL i; +five| f1| x +----+-----------+---------- + | 0| -2 + | 123456| 123454 + | -123456| -123458 + | 2147483647|2147483645 + |-2147483647|2147483647 +(5 rows) + +QUERY: SELECT '' AS five, i.f1, i.f1 - '2'::int4 AS x FROM INT4_TBL i; +five| f1| x +----+-----------+---------- + | 0| -2 + | 123456| 123454 + | -123456| -123458 + | 2147483647|2147483645 + |-2147483647|2147483647 +(5 rows) + +QUERY: SELECT '' AS five, i.f1, i.f1 / '2'::int2 AS x FROM INT4_TBL i; +five| f1| x +----+-----------+----------- + | 0| 0 + | 123456| 61728 + | -123456| -61728 + | 2147483647| 1073741823 + |-2147483647|-1073741823 +(5 rows) + +QUERY: SELECT '' AS five, i.f1, i.f1 / '2'::int4 AS x FROM INT4_TBL i; +five| f1| x +----+-----------+----------- + | 0| 0 + | 123456| 61728 + | -123456| -61728 + | 2147483647| 1073741823 + |-2147483647|-1073741823 +(5 rows) + +QUERY: SELECT -2+3 AS one; +one +--- + 1 +(1 row) + +QUERY: SELECT 4-2 AS two; +two +--- + 2 +(1 row) + +QUERY: SELECT 2- -1 AS three; +three +----- + 3 +(1 row) + +QUERY: SELECT 2 - -2 AS four; +four +---- + 4 +(1 row) + +QUERY: SELECT '2'::int2 * '2'::int2 = '16'::int2 / '4'::int2 AS true; +true +---- +t +(1 row) + +QUERY: SELECT '2'::int4 * '2'::int2 = '16'::int2 / '4'::int4 AS true; +true +---- +t +(1 row) + +QUERY: SELECT '2'::int2 * '2'::int4 = '16'::int4 / '4'::int2 AS true; +true +---- +t +(1 row) + +QUERY: SELECT '1000'::int4 < '999'::int4 AS false; +false +----- +f +(1 row) + +QUERY: SELECT 4! AS twenty_four; +twenty_four +----------- + 24 +(1 row) + +QUERY: SELECT !!3 AS six; +six +--- + 6 +(1 row) + +QUERY: SELECT 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 AS ten; +ten +--- + 10 +(1 row) + +QUERY: SELECT 2 + 2 / 2 AS three; +three +----- + 3 +(1 row) + +QUERY: SELECT (2 + 2) / 2 AS two; +two +--- + 2 +(1 row) + +QUERY: SELECT dsqrt('64'::float8) AS eight; +eight +----- + 8 +(1 row) + +QUERY: SELECT |/'64'::float8 AS eight; +eight +----- + 8 +(1 row) + +QUERY: SELECT ||/'27'::float8 AS three; +three +----- + 3 +(1 row) +