Differentiate MERGE queries with different structures
bt22nakamorit <bt22nakamorit@oss.nttdata.com>
From: bt22nakamorit <bt22nakamorit@oss.nttdata.com>
To: PostgreSQL Hackers <pgsql-hackers@lists.postgresql.org>
Date: 2022-09-26T06:12:46Z
Lists: pgsql-hackers
Attachments
- merge_stat.patch (text/x-diff) patch
Hi, pg_stat_statements module distinguishes queries with different structures, but some visibly different MERGE queries were combined as one pg_stat_statements entry. For example, MERGE INTO test1 USING test2 ON test1.id = test2.id WHEN MATCHED THEN UPDATE var = 1; MERGE INTO test1 USING test2 ON test1.id = test2.id WHEN MATCHED THEN DELETE; These two queries have different command types after WHEN (UPDATE and DELETE), but they were regarded as one entry in pg_stat_statements. I think that they should be sampled as distinct queries. I attached a patch file that adds information about MERGE queries on the documentation of pg_stat_statements, and lines of code that helps with the calculation of queryid hash value to differentiate MERGE queries. Any kind of feedback is appreciated. Tatsu
Commits
-
Fix pg_stat_statements for MERGE
- 72abf03b6491 15.0 landed
- 249b0409b181 16.0 landed