From: | legrand legrand <legrand_legrand(at)hotmail(dot)com> |
---|---|
To: | pgsql-hackers(at)postgresql(dot)org |
Subject: | Re: Implementing Incremental View Maintenance |
Date: | 2019-12-23 10:41:18 |
Message-ID: | 1577097678190-0.post@n3.nabble.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
Hello,
regarding my initial post:
> For each insert into a base table there are 3 statements:
> - ANALYZE pg_temp_3.pg_temp_81976
> - WITH updt AS ( UPDATE public.mv1 AS mv SET __ivm_count__ = ...
> - DROP TABLE pg_temp_3.pg_temp_81976
For me there where 3 points to discuss:
- create/drop tables may bloat dictionnary tables
- create/drop tables prevents "WITH updt ..." from being shared (with some
plan caching)
- generates many lines in pg_stat_statements
In fact I like the idea of a table created per session, but I would even
prefer a common "table" shared between all sessions like GLOBAL TEMPORARY
TABLE (or something similar) as described here:
https://www.postgresql.org/message-id/flat/157703426606.1198.2452090605041230054.pgcf%40coridan.postgresql.org#331e8344bbae904350af161fb43a0aa6
That would remove the drop/create issue, permits to reduce planning time for
"WITH updt ..." statements
(as done today in PLpgsql triggers), and would fix the pgss "bloat" issue.
Like that the "cost" of the immediate refresh approach would be easier to
support ;o)
Regards
PAscal
--
Sent from: https://www.postgresql-archive.org/PostgreSQL-hackers-f1928748.html
From | Date | Subject | |
---|---|---|---|
Next Message | Amit Kapila | 2019-12-23 10:41:32 | Re: [HACKERS] Block level parallel vacuum |
Previous Message | Yugo Nagata | 2019-12-23 09:50:47 | Re: Implementing Incremental View Maintenance |