The latest patch fails while applying header files part. Kindly rebase.
The patch looks good to me. However, I wonder what are the other scenarios where xact_commit is incremented because even if I commit a single transaction with your patch applied the increment in xact_commit is > 1. As you mentioned upthread, need to check what internal operation resulted in the increase. But the increase in xact_commit is surely lesser with the patch.
postgres=# BEGIN; BEGIN postgres=# select xact_commit from pg_stat_database where datname = 'postgres'; xact_commit ------------- 158 (1 row)
postgres=# explain analyze select * from foo where i = 1000; QUERY PLAN ------------------------------------------------------------------------------------------------------------------------ Gather (cost=1000.00..136417.85 rows=1 width=37) (actual time=4.596..3792.710 rows=1 loops=1) Workers Planned: 2 Workers Launched: 2 -> Parallel Seq Scan on foo (cost=0.00..135417.75 rows=1 width=37) (actual time=2448.038..3706.009 rows=0 loops=3) Filter: (i = 1000) Rows Removed by Filter: 3333333 Planning Time: 0.353 ms Execution Time: 3793.572 ms (8 rows)
postgres=# commit; COMMIT postgres=# select xact_commit from pg_stat_database where datname = 'postgres'; xact_commit ------------- 161 (1 row)