postgrespro.git / summary / log / commit / refs

commit    ebeb3dea772652887b67a7549906f5a9ec8a487f
Author:   Tomas Vondra <tomas.vondra@postgresql.org>
Date:     Sat May 09 17:41:42 2020 +0000

    Simplify show_incremental_sort_info a bit
    
    Incremental sort always processes at least one full group group before
    switching to prefix groups, so it's enough to check just the number of
    full groups. There was no risk of division by zero due to the extra
    condition, but it made the code harder to understand.
    
    Reported-by: Ranier Vilela
    Discussion: https://postgr.es/m/CAEudQAp+7qoS92-4V1vLChpdY3vEkLCbf+gye6P-4cirE-0z0A@mail.gmail.com


src/backend/commands/explain.c | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/src/backend/commands/explain.c b/src/backend/commands/explain.c index 1275bec673..5695802081 100644 --- a/src/backend/commands/explain.c +++ b/src/backend/commands/explain.c @@ -2922,7 +2922,6 @@ show_incremental_sort_info(IncrementalSortState *incrsortstate, * contribute anything meaningful. */ fullsortGroupInfo = &incsort_info->fullsortGroupInfo; - prefixsortGroupInfo = &incsort_info->prefixsortGroupInfo; /* * Since we never have any prefix groups unless we've first sorted @@ -2930,8 +2929,7 @@ show_incremental_sort_info(IncrementalSortState *incrsortstate, * prefix group), we don't need to do anything if there were 0 full * groups. */ - if (fullsortGroupInfo->groupCount == 0 && - prefixsortGroupInfo->groupCount == 0) + if (fullsortGroupInfo->groupCount == 0) continue; if (es->workers_state) @@ -2940,6 +2938,7 @@ show_incremental_sort_info(IncrementalSortState *incrsortstate, indent_first_line = es->workers_state == NULL || es->verbose; show_incremental_sort_group_info(fullsortGroupInfo, "Full-sort", indent_first_line, es); + prefixsortGroupInfo = &incsort_info->prefixsortGroupInfo; if (prefixsortGroupInfo->groupCount > 0) { if (es->format == EXPLAIN_FORMAT_TEXT) [parent: 9155b4be9a13]