On 2020/11/06 1:56, Mark Dilger wrote:
>
>
>> On Nov 5, 2020, at 8:20 AM, Fujii Masao <masao.fujii@oss.nttdata.com> wrote:
>>
>> The patch that makes pg_stat_statements track the number of rows that
>> REFRESH MATERIALIZED VIEW command processes was proposed at [1].
>> When reviewing the patch, I just wondered why the completion tag output
>> for REFRESH MATERIALIZED VIEW doesn't include the row count. Is this
>> an intentional behavior? I've not found the past discussion about this yet.
>
> Of 191 command tags, only 7 return the number of rows. See src/include/tcop/cmdtaglist.h. REFRESH MATERIALIZED VIEW
issimilar to CREATE MATERIALIZED VIEW and also CREATE TABLE AS, which also do not return the row count.
Yes, so I was wondering if REFRESH MATERIALIZED VIEW also should use
CMDTAG_SELECT like CREATE MATERIALIZED VIEW does.
> I think this behavior is historical, and preserved for compatibility.
Maybe true. The patch that I mentioned upthread tries to change
REFRESH MATERIALIZED VIEW so that it register the rowcount into
its query completion so that pg_stat_statements can track
the number of processed rows. But display_rowcount for
CMDTAG_REFRESH_MATERIALIZED_VIEW still should be false
in cmdtaglist.h to avoid the change of the completion tag output.
Regards,
--
Fujii Masao
Advanced Computing Technology Center
Research and Development Headquarters
NTT DATA CORPORATION