On Thu, 2022-02-10 at 00:29 +0900, Abhishek Bhola wrote:
> > > I see there is an AUTOVACUUM job started on all the partitions that have been
> > > read (on which select has run). I am assuming the reason why Postgres is
> > > autovacuuming these large partitions is this:
> > >
> > > db=# SELECT c.relname as table_name, c.relkind as type, age(c.relfrozenxid) as age,
> > > c.relfrozenxid FROM pg_class AS c WHERE age(c.relfrozenxid) <> 2147483647 ORDER BY 3 DESC LIMIT 20;
> > > table_name | type | age | relfrozenxid
> > > ---------------------------+------+-----------+--------------
> > > hist_omx_orderaudit201506 | r | 201463508 | 319891
> > > hist_omx_orderaudit201509 | r | 201418497 | 364902
> > > hist_omx_orderaudit201205 | r | 201142042 | 641357
> > >
> > > autovacuum_freeze_max_age
> > > ---------------------------
> > > 200000000
> > > (1 row)
>
> I see, but then why is the autovacuum getting triggered after the select command?
Autovacuum is triggered because "relfrozenxid" is nore than 200000000 transactions
in the past.
Yours,
Laurenz Albe
--
Cybertec | https://www.cybertec-postgresql.com