Re: pg_upgrade and statistics
Bruce Momjian <bruce@momjian.us>
From: Bruce Momjian <bruce@momjian.us>
To: Kevin Grittner <Kevin.Grittner@wicourts.gov>
Cc: Daniel Farina <daniel@heroku.com>, Greg Stark <stark@mit.edu>, pgsql-hackers <pgsql-hackers@postgresql.org>
Date: 2012-03-13T18:53:26Z
Lists: pgsql-hackers
On Tue, Mar 13, 2012 at 01:18:58PM -0500, Kevin Grittner wrote: > Greg Stark <stark@mit.edu> wrote: > > Daniel Farina <daniel@heroku.com> wrote: > >> You probably are going to ask: "why not just run ANALYZE and be > >> done with it?" > > > > Uhm yes. If analyze takes a long time then something is broken. > > It's only reading a sample which should be pretty much a fixed > > number of pages per table. It shouldn't take much longer on your > > large database than on your smaller databases. > > On a small database: > > cc=# analyze "CaseHist"; > ANALYZE > Time: 255.107 ms > cc=# select relpages, reltuples from pg_class where relname = > 'CaseHist'; > relpages | reltuples > ----------+----------- > 1264 | 94426 > (1 row) > > Same table on a much larger database (and much more powerful > hardware): > > cir=# analyze "CaseHist"; > ANALYZE > Time: 143450.467 ms > cir=# select relpages, reltuples from pg_class where relname = > 'CaseHist'; > relpages | reltuples > ----------+------------- > 3588659 | 2.12391e+08 > (1 row) > > Either way, there are about 500 tables in the database. That is 2.5 minutes. How large is that database? -- Bruce Momjian <bruce@momjian.us> http://momjian.us EnterpriseDB http://enterprisedb.com + It's impossible for everything to be true. +