diff options
author | Tom Lane <tgl@sss.pgh.pa.us> | 2017-03-18 17:49:06 -0400 |
---|---|---|
committer | Tom Lane <tgl@sss.pgh.pa.us> | 2017-03-18 17:49:39 -0400 |
commit | 17f8ffa1e331cd0d95a3c4ccec66ea83d8b893c5 (patch) | |
tree | 8a027451104c4fa8504a8ccffe21af7148a507c0 /src/backend/utils/adt/tsquery_gist.c | |
parent | 27f1f585fd7ee749cacd3de8c2c77a457ef4c288 (diff) | |
download | postgresql-17f8ffa1e331cd0d95a3c4ccec66ea83d8b893c5.tar.gz postgresql-17f8ffa1e331cd0d95a3c4ccec66ea83d8b893c5.zip |
Fix REFRESH MATERIALIZED VIEW to report activity to the stats collector.
The non-concurrent code path for REFRESH MATERIALIZED VIEW failed to
report its updates to the stats collector. This is bad since it means
auto-analyze doesn't know there's any work to be done. Adjust it to
report the refresh as a table truncate followed by insertion of an
appropriate number of rows.
Since a matview could contain more than INT_MAX rows, change the
signature of pgstat_count_heap_insert() to accept an int64 rowcount.
(The accumulator it's adding into is already int64, but existing
callers could not insert more than a small number of rows at once,
so the argument had been declared just "int n".)
This is surely a bug fix, but changing pgstat_count_heap_insert()'s API
seems too risky for the back branches. Given the lack of previous
complaints, I'm not sure it's a big enough problem to justify a kluge
solution that would avoid that. So, no back-patch, at least for now.
Jim Mlodgenski, adjusted a bit by me
Discussion: https://postgr.es/m/CAB_5SRchSz7-WmdO5szdiknG8Oj_GGqJytrk1KRd11yhcMs1KQ@mail.gmail.com
Diffstat (limited to 'src/backend/utils/adt/tsquery_gist.c')
0 files changed, 0 insertions, 0 deletions