Opened 3 years ago

Closed 2 years ago

#3752 closed defect (fixed)

Mark all aggregates raster and geometry as parallel safe

Reported by: robe Owned by: pramsey
Priority: high Milestone: PostGIS 2.4.0
Component: postgis Version: master
Keywords: Cc:


Mark all PostGIS aggregates as safe.

As kompaz pointed out in #3751, there isn't any harm in doing this.

However since this isn't really a bug, I'm not going to backport the change to 2.3. Just going to do for 2.4. I still think in most cases the work can't be done in a parallel worker since the same groupings are not guaranteed to happen in the same worker and since there is no combine function, it can't regroup the worker groups.

That's one reason why it's not worth the bother pushing to 2.3. Since create aggregate still requires a drop and recreate, might cause more damage than good since some folks may not be able to cleanly upgrade 2.3 minor.

With PostgreSQL 10 there are also many more strategies supported for parallelism, so definitely more worth while.

From release notes of 10

Support parallel btree index scans (Rahila Syed, Amit Kapila, Robert Haas, Rafia Sabih)

Allows btree index pages to be checked by separate parallel workers.

Support parallel bitmap heap scans (Dilip Kumar)

This allows a single index scan to dispatch parallel workers to process different areas of the heap.

Allow merge joins to be performed in parallel (Dilip Kumar)

Allow non-correlated subqueries to be run in parallel (Amit Kapila)

Improve ability of parallel workers to return pre-sorted data (Rushabh Lathia)

Change History (2)

comment:1 Changed 3 years ago by robe

In 15412:

Mark all raster aggregate functions as parallel safe.
Also more schema qualification, still a lot not schema qualified
flip ST_Intersection to be immutable parallel safe
references #3752 for PostGIS 2.4 (trunk)

comment:2 Changed 2 years ago by robe

Resolution: fixed
Status: newclosed
Note: See TracTickets for help on using tickets.