1
0
mirror of https://github.com/postgres/postgres.git synced 2025-07-28 23:42:10 +03:00

Fix incorrect function return code in cube_cmp and cube_dim;

update regression expected files to what I think is correct.
This commit is contained in:
Tom Lane
2006-07-27 21:55:09 +00:00
parent 9f99edfd7e
commit 5f0473534f
4 changed files with 55 additions and 27 deletions

View File

@ -1054,10 +1054,10 @@ CREATE INDEX test_cube_ix ON test_cube USING gist (c);
SELECT * FROM test_cube WHERE c && '(3000,1000),(0,0)' ORDER BY c;
c
--------------------------
(1594, 1043),(1517, 971)
(337, 455),(240, 359)
(1444, 403),(1346, 344)
(759, 187),(662, 163)
(1444, 403),(1346, 344)
(1594, 1043),(1517, 971)
(2424, 160),(2424, 81)
(5 rows)
@ -1065,10 +1065,10 @@ SELECT * FROM test_cube WHERE c && '(3000,1000),(0,0)' ORDER BY c;
SELECT * FROM test_cube WHERE c && '(3000,1000),(0,0)' GROUP BY c ORDER BY c;
c
--------------------------
(1594, 1043),(1517, 971)
(337, 455),(240, 359)
(1444, 403),(1346, 344)
(759, 187),(662, 163)
(1444, 403),(1346, 344)
(1594, 1043),(1517, 971)
(2424, 160),(2424, 81)
(5 rows)

View File

@ -1054,10 +1054,10 @@ CREATE INDEX test_cube_ix ON test_cube USING gist (c);
SELECT * FROM test_cube WHERE c && '(3000,1000),(0,0)' ORDER BY c;
c
--------------------------
(1594, 1043),(1517, 971)
(337, 455),(240, 359)
(1444, 403),(1346, 344)
(759, 187),(662, 163)
(1444, 403),(1346, 344)
(1594, 1043),(1517, 971)
(2424, 160),(2424, 81)
(5 rows)
@ -1065,10 +1065,10 @@ SELECT * FROM test_cube WHERE c && '(3000,1000),(0,0)' ORDER BY c;
SELECT * FROM test_cube WHERE c && '(3000,1000),(0,0)' GROUP BY c ORDER BY c;
c
--------------------------
(1594, 1043),(1517, 971)
(337, 455),(240, 359)
(1444, 403),(1346, 344)
(759, 187),(662, 163)
(1444, 403),(1346, 344)
(1594, 1043),(1517, 971)
(2424, 160),(2424, 81)
(5 rows)

View File

@ -5,10 +5,9 @@
-- first, define the datatype. Turn off echoing so that expected file
-- does not depend on contents of cube.sql.
--
SET client_min_messages = warning;
\set ECHO none
psql:cube.sql:10: NOTICE: type "cube" is not yet defined
DETAIL: Creating a shell type definition.
psql:cube.sql:15: NOTICE: argument type cube is only a shell
RESET client_min_messages;
--
-- testing the input and output functions
--
@ -395,6 +394,37 @@ SELECT '(0)'::text::cube;
(0)
(1 row)
--
-- Test the float[] -> cube cast
--
SELECT cube('{0,1,2}'::float[], '{3,4,5}'::float[]);
cube
---------------------
(0, 1, 2),(3, 4, 5)
(1 row)
SELECT cube('{0,1,2}'::float[], '{3}'::float[]);
ERROR: UR and LL arrays must be of same length
SELECT cube(NULL::float[], '{3}'::float[]);
cube
------
(1 row)
SELECT cube('{0,1,2}'::float[]);
cube
-----------
(0, 1, 2)
(1 row)
SELECT cube_subset(cube('(1,3,5),(6,7,8)'), ARRAY[3,2,1,1]);
cube_subset
---------------------------
(5, 3, 1, 1),(8, 7, 6, 6)
(1 row)
SELECT cube_subset(cube('(1,3,5),(6,7,8)'), ARRAY[4,0]);
ERROR: Index out of bounds
--
-- Testing limit of CUBE_MAX_DIM dimensions check in cube_in.
--
@ -1021,18 +1051,18 @@ SELECT cube_enlarge('(2,-2),(-3,7)'::cube, -3, 2);
CREATE TABLE test_cube (c cube);
\copy test_cube from 'data/test_cube.data'
CREATE INDEX test_cube_ix ON test_cube USING gist (c);
SELECT * FROM test_cube WHERE c && '(3000,1000),(0,0)';
SELECT * FROM test_cube WHERE c && '(3000,1000),(0,0)' ORDER BY c;
c
--------------------------
(2424, 160),(2424, 81)
(337, 455),(240, 359)
(759, 187),(662, 163)
(1444, 403),(1346, 344)
(337, 455),(240, 359)
(1594, 1043),(1517, 971)
(2424, 160),(2424, 81)
(5 rows)
-- Test sorting
SELECT * FROM test_cube WHERE c && '(3000,1000),(0,0)' GROUP BY c;
SELECT * FROM test_cube WHERE c && '(3000,1000),(0,0)' GROUP BY c ORDER BY c;
c
--------------------------
(337, 455),(240, 359)