Thread: parallel not working
Hi:
I write a C function, the function is as follows:
create function st_geosotgrid(geom geometry, level integer) returns geosotgrid[]
immutable
strict
parallel safe
language c
as
$$
begin
-- missing source code
end;
$$;
At the same time, I set the relevant parameters:
force_parallel_mode: off
max_parallel_maintenance_workers: 4
max_parallel_workers: 8
max_parallel_workers_per_gather: 2
max_worker_processes: 8
min_parallel_index_scan_size: 64
min_parallel_table_scan_size: 1024
parallel_leader_participation: on
set parallel_setup_cost = 10;
set parallel_tuple_cost = 0.001;
sql:
select st_geosotgrid(geom,20) from t_polygon_gis;
and the explain as follows:
Gather (cost=10.00..5098.67 rows=200000 width=32)
Workers Planned: 2
-> Parallel Seq Scan on t_polygon_gis (cost=0.00..4888.67 rows=83333 width=32)
when i explain analyze ,the parallel worker is suspend:

I would like to know how can I get it to work properly?
Thank You!
Attachment
On Thu, May 19, 2022 at 8:05 AM huangning290@yahoo.com <huangning290@yahoo.com> wrote:
I would like to know how can I get it to work properly?
I suppose you have a bug in your C code. Try hooking up a debugger to one of the sessions that is hung and see what it's doing e.g.
gdb -p 26130
bt