blob: 709e64e038ee9b6640ff5ae955a81c0e4f8d8fa3 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
|
--
-- PARALLEL
--
-- Serializable isolation would disable parallel query, so explicitly use an
-- arbitrary other level.
begin isolation level repeatable read;
-- setup parallel test
set parallel_setup_cost=0;
set parallel_tuple_cost=0;
explain (costs off)
select count(*) from a_star;
QUERY PLAN
-----------------------------------------------------
Finalize Aggregate
-> Gather
Workers Planned: 1
-> Partial Aggregate
-> Append
-> Parallel Seq Scan on a_star
-> Parallel Seq Scan on b_star
-> Parallel Seq Scan on c_star
-> Parallel Seq Scan on d_star
-> Parallel Seq Scan on e_star
-> Parallel Seq Scan on f_star
(11 rows)
select count(*) from a_star;
count
-------
50
(1 row)
set force_parallel_mode=1;
explain (costs off)
select stringu1::int2 from tenk1 where unique1 = 1;
QUERY PLAN
-----------------------------------------------
Gather
Workers Planned: 1
Single Copy: true
-> Index Scan using tenk1_unique1 on tenk1
Index Cond: (unique1 = 1)
(5 rows)
do $$begin
-- Provoke error in worker. The original message CONTEXT contains a worker
-- PID that must be hidden in the test output.
perform stringu1::int2 from tenk1 where unique1 = 1;
exception
when others then
raise 'SQLERRM: %', sqlerrm;
end$$;
ERROR: SQLERRM: invalid input syntax for integer: "BAAAAA"
CONTEXT: PL/pgSQL function inline_code_block line 7 at RAISE
rollback;
|