Re: select count(*) performance (vacuum did not help) - Mailing list pgsql-performance

From Heikki Linnakangas
Subject Re: select count(*) performance (vacuum did not help)
Date
Msg-id 46F7C9F1.1080805@enterprisedb.com
Whole thread Raw
In response to select count(*) performance (vacuum did not help)  (Gábor Farkas <gabor@nekomancer.net>)
Responses Re: select count(*) performance (vacuum did not help)
List pgsql-performance
Gábor Farkas wrote:
> - this table has a lot of updates and inserts, it works very similarly
> to a session-table for a web-application

Make sure you run VACUUM often enough.

> - there is a cron-job that deletes all the old entries, so it's size is
> rougly between 15000 and 35000 entries (it's run daily, and every day
> deletes around 10000 entries)

Running vacuum after these deletes to immediately reclaim the dead space
would also be a good idea.

> - but in the past, the cron-job was not in place, so the table's size
> grew to around 800000 entries (in around 80 days)

That bloated your table, so that there's still a lot of empty pages in
it. VACUUM FULL should bring it back to a reasonable size. Regular
normal non-FULL VACUUMs should keep it in shape after that.

--
  Heikki Linnakangas
  EnterpriseDB   http://www.enterprisedb.com

pgsql-performance by date:

Previous
From: "Pavan Deolasee"
Date:
Subject: Re: select count(*) performance (vacuum did not help)
Next
From: Gábor Farkas
Date:
Subject: Re: select count(*) performance (vacuum did not help)