Fix whitespace in HashAgg EXPLAIN ANALYZE
authorDavid Rowley
Wed, 8 Jul 2020 22:06:24 +0000 (10:06 +1200)
committerDavid Rowley
Wed, 8 Jul 2020 22:06:24 +0000 (10:06 +1200)
The Sort node does not put a space between the number of kilobytes and
the "kB" of memory or disk space used, but HashAgg does.  Here we align
HashAgg to do the same as Sort.  Sort has been displaying this
information for longer than HashAgg, so it makes sense to align HashAgg
to Sort rather than the other way around.

Reported-by: Justin Pryzby
Discussion: https://postgr.es/m/20200708163021[email protected]
Backpatch-through: 13, where the hashagg started showing these details

src/backend/commands/explain.c

index 093864cfc04a8c7799ae770b8283e7eb27a7b6d8..a283e4d45c84bd3dd86a0f807627ef8db2b62d39 100644 (file)
@@ -3099,11 +3099,11 @@ show_hashagg_info(AggState *aggstate, ExplainState *es)
        else
            appendStringInfoString(es->str, "  ");
 
-       appendStringInfo(es->str, "Peak Memory Usage: " INT64_FORMAT " kB",
+       appendStringInfo(es->str, "Peak Memory Usage: " INT64_FORMAT "kB",
                         memPeakKb);
 
        if (aggstate->hash_batches_used > 0)
-           appendStringInfo(es->str, "  Disk Usage: " UINT64_FORMAT " kB  HashAgg Batches: %d",
+           appendStringInfo(es->str, "  Disk Usage: " UINT64_FORMAT "kB  HashAgg Batches: %d",
                             aggstate->hash_disk_used,
                             aggstate->hash_batches_used);
        appendStringInfoChar(es->str, '\n');
@@ -3130,11 +3130,11 @@ show_hashagg_info(AggState *aggstate, ExplainState *es)
            {
                ExplainIndentText(es);
 
-               appendStringInfo(es->str, "Peak Memory Usage: " INT64_FORMAT " kB",
+               appendStringInfo(es->str, "Peak Memory Usage: " INT64_FORMAT "kB",
                                 memPeakKb);
 
                if (hash_batches_used > 0)
-                   appendStringInfo(es->str, "  Disk Usage: " UINT64_FORMAT " kB  HashAgg Batches: %d",
+                   appendStringInfo(es->str, "  Disk Usage: " UINT64_FORMAT "kB  HashAgg Batches: %d",
                                     hash_disk_used, hash_batches_used);
                appendStringInfoChar(es->str, '\n');
            }