|
|
|
|
@ -1336,6 +1336,23 @@ select array[1,3] <@ arrayrange(array[1,2], array[2,1]); |
|
|
|
|
t |
|
|
|
|
(1 row) |
|
|
|
|
|
|
|
|
|
-- |
|
|
|
|
-- Ranges of composites |
|
|
|
|
-- |
|
|
|
|
create type two_ints as (a int, b int); |
|
|
|
|
create type two_ints_range as range (subtype = two_ints); |
|
|
|
|
-- with force_parallel_mode on, this exercises tqueue.c's range remapping |
|
|
|
|
select *, row_to_json(upper(t)) as u from |
|
|
|
|
(values (two_ints_range(row(1,2), row(3,4))), |
|
|
|
|
(two_ints_range(row(5,6), row(7,8)))) v(t); |
|
|
|
|
t | u |
|
|
|
|
-------------------+--------------- |
|
|
|
|
["(1,2)","(3,4)") | {"a":3,"b":4} |
|
|
|
|
["(5,6)","(7,8)") | {"a":7,"b":8} |
|
|
|
|
(2 rows) |
|
|
|
|
|
|
|
|
|
drop type two_ints cascade; |
|
|
|
|
NOTICE: drop cascades to type two_ints_range |
|
|
|
|
-- |
|
|
|
|
-- OUT/INOUT/TABLE functions |
|
|
|
|
-- |
|
|
|
|
|