Unneeded parallel safety tests in grouping_planner - Mailing list pgsql-hackers

From Etsuro Fujita
Subject Unneeded parallel safety tests in grouping_planner
Date
Msg-id 5C768669.8070207@lab.ntt.co.jp
Whole thread Raw
Responses Re: Unneeded parallel safety tests in grouping_planner
List pgsql-hackers
Hi,

Yet another thing I noticed while working on [1] is this in
grouping_planner:

    /*
     * If the input rel is marked consider_parallel and there's nothing
that's
     * not parallel-safe in the LIMIT clause, then the final_rel can be
marked
     * consider_parallel as well.  Note that if the query has rowMarks or is
     * not a SELECT, consider_parallel will be false for every relation
in the
     * query.
     */
    if (current_rel->consider_parallel &&
        is_parallel_safe(root, parse->limitOffset) &&
        is_parallel_safe(root, parse->limitCount))
        final_rel->consider_parallel = true;

If there is a need to add a LIMIT node, we don't consider generating
partial paths for the final relation below (see commit
0927d2f46ddd4cf7d6bf2cc84b3be923e0aedc52), so it seems unnecessary
anymore to assess the parallel-safety of the LIMIT and OFFSET clauses.
To save cycles, why not remove those tests from that function like the
attached?

Best regards,
Etsuro Fujita

[1] https://commitfest.postgresql.org/22/1950/

Attachment

pgsql-hackers by date:

Previous
From: Alvaro Herrera
Date:
Subject: Re: Segfault when restoring -Fd dump on current HEAD
Next
From: Prabhat Sahu
Date:
Subject: pg_dump/pg_restore fail for TAR_DUMP and CUSTOM_DUMP from v94/v95/v96to v11/master.