Test:
postgres=# set max_parallel_degree = 0;
SET
postgres=# explain analyse select * from foo where val = .4678;
QUERY PLAN
------------------------------------------------------------------------------------------------------
Seq Scan on foo (cost=0.00..17402.00 rows=1 width=12) (actual time=200.679..200.679 rows=0 loops=1)
Filter: (val = '0.4678'::double precision)
Rows Removed by Filter: 1000000
Planning time: 0.072 ms
Execution time: 200.700 ms
(5 rows)
postgres=# set max_parallel_degree = 2;
SET
postgres=# explain analyse select * from foo where val = .4678;
QUERY PLAN
-------------------------------------------------------------------------------------------------------------------
Gather (cost=1000.00..7960.90 rows=1 width=12) (actual time=84.540..84.540 rows=0 loops=1)
Number of Workers: 2
-> Parallel Seq Scan on foo (cost=0.00..6960.80 rows=1 width=12) (actual time=52.078..350.967 rows=0 loops=1)
Filter: (val = '0.4678'::double precision)
Rows Removed by Filter: 1606084
Planning time: 0.075 ms
Execution time: 85.780 ms
(7 rows)
postgres=#
Irre.