Re: REFRESH MATERIALIZED VIEW and completion tag output

From: Mark Dilger <mark(dot)dilger(at)enterprisedb(dot)com>
To: Fujii Masao <masao(dot)fujii(at)oss(dot)nttdata(dot)com>
Cc: pgsql-hackers <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: REFRESH MATERIALIZED VIEW and completion tag output
Date: 2020-11-06 05:07:27
Message-ID: 98E52A0E-9827-465F-974A-A1F41E6F8A70@enterprisedb.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

> On Nov 5, 2020, at 4:45 PM, Fujii Masao <masao(dot)fujii(at)oss(dot)nttdata(dot)com> wrote:
>
>
>
> On 2020/11/06 1:56, Mark Dilger wrote:
>>> On Nov 5, 2020, at 8:20 AM, Fujii Masao <masao(dot)fujii(at)oss(dot)nttdata(dot)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 is similar 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.

For both CREATE MATERIALIZED VIEW and CREATE TABLE AS, ExecCreateTableAs() does:

SetQueryCompletion(qc, CMDTAG_SELECT, queryDesc->estate->es_processed);

but ExecRefreshMatView() does nothing with it's QueryCompletion parameter. I don't know why this case should behave differently than the other two.


Mark Dilger
EnterpriseDB: http://www.enterprisedb.com
The Enterprise PostgreSQL Company

In response to

Browse pgsql-hackers by date

  From Date Subject
Next Message Peter Smith 2020-11-06 05:24:46 Re: extension patch of CREATE OR REPLACE TRIGGER
Previous Message Justin Pryzby 2020-11-06 04:58:25 Re: Implementing Incremental View Maintenance