diff options
author | Andres Freund <andres@anarazel.de> | 2022-05-12 18:49:33 -0700 |
---|---|---|
committer | Andres Freund <andres@anarazel.de> | 2022-05-12 18:54:26 -0700 |
commit | 0cf16cb8ca4853b084c40eca310c4c9c3ebf7e2a (patch) | |
tree | 295524964960bfec445c0cefece8830fbc1cd7f6 /src/backend/parser/parse_expr.c | |
parent | 8d3341266508fc1aed1f1a6bdb4ed885821c81b0 (diff) | |
download | postgresql-0cf16cb8ca4853b084c40eca310c4c9c3ebf7e2a.tar.gz postgresql-0cf16cb8ca4853b084c40eca310c4c9c3ebf7e2a.zip |
Don't report stats in LogicalRepApplyLoop() when in xact.
pgstat_report_stat() is only supposed to be called outside of transactions. In
5891c7a8ed8 I added a pgstat_report_stat() call into LogicalRepApplyLoop()'s
timeout branch. While not commonly reached inside a transaction, it is
reachable (e.g. due to network bottlenecks or the sender being stalled / slow
for some reason).
To fix, add a !IsTransactionState() check.
No test added because there's no easy way to reproduce this case without
patching the code.
Reported-By: Erik Rijkers <er@xs4all.nl>
Discussion: https://postgr.es/m/b3463b8c-2328-dcac-0136-af95715493c1@xs4all.nl
Diffstat (limited to 'src/backend/parser/parse_expr.c')
0 files changed, 0 insertions, 0 deletions