citus/src/test/regress/expected/prepared_statements_4.out

357 lines
9.3 KiB
Plaintext

SET search_path TO "prepared statements";
PREPARE prepared_relabel_insert(varchar) AS
INSERT INTO text_partition_column_table VALUES ($1, 1);
EXECUTE prepared_relabel_insert('test');
EXECUTE prepared_relabel_insert('test');
EXECUTE prepared_relabel_insert('test');
EXECUTE prepared_relabel_insert('test');
EXECUTE prepared_relabel_insert('test');
EXECUTE prepared_relabel_insert('test');
EXECUTE prepared_relabel_insert('test');
SELECT key, value FROM text_partition_column_table ORDER BY key;
key | value
---------------------------------------------------------------------
test | 1
test | 1
test | 1
test | 1
test | 1
test | 1
test | 1
(7 rows)
PREPARE prepared_coercion_to_domain_insert(text) AS
INSERT INTO domain_partition_column_table VALUES ($1, 1);
EXECUTE prepared_coercion_to_domain_insert('test-1');
EXECUTE prepared_coercion_to_domain_insert('test-2');
EXECUTE prepared_coercion_to_domain_insert('test-3');
EXECUTE prepared_coercion_to_domain_insert('test-4');
EXECUTE prepared_coercion_to_domain_insert('test-5');
EXECUTE prepared_coercion_to_domain_insert('test-6');
EXECUTE prepared_coercion_to_domain_insert('test-7');
PREPARE FOO AS INSERT INTO http_request (
site_id, ingest_time, url, request_country,
ip_address, status_code, response_time_msec
) VALUES (
1, clock_timestamp(), 'http://example.com/path', 'USA',
inet '88.250.10.123', 200, 10
);
EXECUTE foo;
EXECUTE foo;
EXECUTE foo;
EXECUTE foo;
EXECUTE foo;
EXECUTE foo;
EXECUTE foo;
EXECUTE foo;
SELECT count(distinct ingest_time) FROM http_request WHERE site_id = 1;
count
---------------------------------------------------------------------
8
(1 row)
-- Standard planner converted text and varchar casts to cstring in some cases
-- We make sure we convert it back to text when parsing the expression
INSERT INTO test VALUES ('2022-02-02', 0);
INSERT INTO test VALUES ('2022-01-01', 1);
INSERT INTO test VALUES ('2021-01-01', 2);
-- try different planners
PREPARE test_statement_regular(text) AS
SELECT user_id FROM test WHERE t >= $1::timestamp ORDER BY user_id;
EXECUTE test_statement_regular('2022-01-01');
user_id
---------------------------------------------------------------------
0
1
(2 rows)
EXECUTE test_statement_regular('2022-01-01');
user_id
---------------------------------------------------------------------
0
1
(2 rows)
EXECUTE test_statement_regular('2022-01-01');
user_id
---------------------------------------------------------------------
0
1
(2 rows)
EXECUTE test_statement_regular('2022-01-01');
user_id
---------------------------------------------------------------------
0
1
(2 rows)
EXECUTE test_statement_regular('2022-01-01');
user_id
---------------------------------------------------------------------
0
1
(2 rows)
EXECUTE test_statement_regular('2022-01-01');
user_id
---------------------------------------------------------------------
0
1
(2 rows)
EXECUTE test_statement_regular('2022-01-01');
user_id
---------------------------------------------------------------------
0
1
(2 rows)
EXECUTE test_statement_regular('2022-01-01');
user_id
---------------------------------------------------------------------
0
1
(2 rows)
PREPARE test_statement_router(int, text) AS
SELECT user_id FROM test WHERE user_id = $1 AND t >= $2::timestamp ORDER BY user_id;
EXECUTE test_statement_router(1, '2022-01-01');
user_id
---------------------------------------------------------------------
1
(1 row)
EXECUTE test_statement_router(1, '2022-01-01');
user_id
---------------------------------------------------------------------
1
(1 row)
EXECUTE test_statement_router(1, '2022-01-01');
user_id
---------------------------------------------------------------------
1
(1 row)
EXECUTE test_statement_router(1, '2022-01-01');
user_id
---------------------------------------------------------------------
1
(1 row)
EXECUTE test_statement_router(1, '2022-01-01');
user_id
---------------------------------------------------------------------
1
(1 row)
EXECUTE test_statement_router(1, '2022-01-01');
user_id
---------------------------------------------------------------------
1
(1 row)
EXECUTE test_statement_router(1, '2022-01-01');
user_id
---------------------------------------------------------------------
1
(1 row)
EXECUTE test_statement_router(1, '2022-01-01');
user_id
---------------------------------------------------------------------
1
(1 row)
PREPARE test_statement_repartition(int, text) AS
SELECT count(*) FROM test t1 JOIN test t2 USING (t) WHERE t1.user_id = $1 AND t >= $2::timestamp;
EXECUTE test_statement_repartition(1, '2022-01-01');
count
---------------------------------------------------------------------
1
(1 row)
EXECUTE test_statement_repartition(1, '2022-01-01');
count
---------------------------------------------------------------------
1
(1 row)
EXECUTE test_statement_repartition(1, '2022-01-01');
count
---------------------------------------------------------------------
1
(1 row)
EXECUTE test_statement_repartition(1, '2022-01-01');
count
---------------------------------------------------------------------
1
(1 row)
EXECUTE test_statement_repartition(1, '2022-01-01');
count
---------------------------------------------------------------------
1
(1 row)
EXECUTE test_statement_repartition(1, '2022-01-01');
count
---------------------------------------------------------------------
1
(1 row)
EXECUTE test_statement_repartition(1, '2022-01-01');
count
---------------------------------------------------------------------
1
(1 row)
EXECUTE test_statement_repartition(1, '2022-01-01');
count
---------------------------------------------------------------------
1
(1 row)
PREPARE test_statement_cte(text, text) AS
WITH cte_1 AS MATERIALIZED (SELECT user_id, t FROM test WHERE t >= $1::timestamp ORDER BY user_id)
SELECT user_id FROM cte_1 WHERE t <= $2::timestamp;
EXECUTE test_statement_cte('2022-01-01', '2022-01-01');
user_id
---------------------------------------------------------------------
1
(1 row)
EXECUTE test_statement_cte('2022-01-01', '2022-01-01');
user_id
---------------------------------------------------------------------
1
(1 row)
EXECUTE test_statement_cte('2022-01-01', '2022-01-01');
user_id
---------------------------------------------------------------------
1
(1 row)
EXECUTE test_statement_cte('2022-01-01', '2022-01-01');
user_id
---------------------------------------------------------------------
1
(1 row)
EXECUTE test_statement_cte('2022-01-01', '2022-01-01');
user_id
---------------------------------------------------------------------
1
(1 row)
EXECUTE test_statement_cte('2022-01-01', '2022-01-01');
user_id
---------------------------------------------------------------------
1
(1 row)
EXECUTE test_statement_cte('2022-01-01', '2022-01-01');
user_id
---------------------------------------------------------------------
1
(1 row)
EXECUTE test_statement_cte('2022-01-01', '2022-01-01');
user_id
---------------------------------------------------------------------
1
(1 row)
PREPARE test_statement_insert(int, text) AS
INSERT INTO test VALUES ($2::timestamp, $1);
EXECUTE test_statement_insert(3, '2022-03-03');
EXECUTE test_statement_insert(4, '2022-04-04');
EXECUTE test_statement_insert(5, '2022-05-05');
EXECUTE test_statement_insert(6, '2022-06-06');
EXECUTE test_statement_insert(7, '2022-07-07');
EXECUTE test_statement_insert(8, '2022-08-08');
EXECUTE test_statement_insert(9, '2022-09-09');
EXECUTE test_statement_insert(10, '2022-10-10');
SELECT count(*) FROM test;
count
---------------------------------------------------------------------
11
(1 row)
EXECUTE test_statement_regular('2022-01-01');
user_id
---------------------------------------------------------------------
0
1
3
4
5
6
7
8
9
10
(10 rows)
PREPARE test_statement_null(text) AS
SELECT user_id , $1::timestamp FROM test ORDER BY user_id LIMIT 2;
EXECUTE test_statement_null(NULL);
user_id | timestamp
---------------------------------------------------------------------
0 |
1 |
(2 rows)
EXECUTE test_statement_null(NULL);
user_id | timestamp
---------------------------------------------------------------------
0 |
1 |
(2 rows)
EXECUTE test_statement_null(NULL);
user_id | timestamp
---------------------------------------------------------------------
0 |
1 |
(2 rows)
EXECUTE test_statement_null(NULL);
user_id | timestamp
---------------------------------------------------------------------
0 |
1 |
(2 rows)
EXECUTE test_statement_null(NULL);
user_id | timestamp
---------------------------------------------------------------------
0 |
1 |
(2 rows)
EXECUTE test_statement_null(NULL);
user_id | timestamp
---------------------------------------------------------------------
0 |
1 |
(2 rows)
EXECUTE test_statement_null(NULL);
user_id | timestamp
---------------------------------------------------------------------
0 |
1 |
(2 rows)
EXECUTE test_statement_null(NULL);
user_id | timestamp
---------------------------------------------------------------------
0 |
1 |
(2 rows)