Hi

pá 31. 5. 2019 v 17:26 odesílatel Ivan Voras <ivo...@gmail.com> napsal:

> Hello,
>
> The reason why we are using temp tables is to allow concurrent runs on
> some very large reports which involve creating and heavily churning dozens
> of very large tables.
>
> The problem we're facing is that if we DON'T use temp tables, the reports
> finish in a couple of hours. If we DO use temp tables, they finish in a
> couple of weeks. While using regular tables, autovacuum runs pretty much
> continuously.
>
> We'll try manually vacuuming the tables after major operations, but that's
> kind of kludgy. What would help is a GUC setting which toggles this
> behaviour.
>
> Since AFAIK temp tables are very close to unlogged ordinary tables, what
> would stop this feature from being implemented?
>

I agree so this is not consistent behave. On second hand, for almost temp
table usage using autovacuum has not benefit.

autovacuum check tables once per minute, and working on closed
transactions. Lot of times temporary tables are filled inside some batch,
and immediately some query is started over this table. It is very low
probability to analyze temp table at good time automatically. So only
explicit call of ANALYZE is correct solution.

Regards

Pavel

Reply via email to