Re: FSM - per database or per installation?

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Heikki Linnakangas wrote:
Craig James wrote:
Are the FSM parameters for each database, or the entire Postgres
system?  In other words, if I have 100 databases, do I need to increase
max_fsm_pages and max_fsm_relations by a factor of 100, or keep them the
same as if I just have one database?

I suspect they're per-database, i.e. as I add databases, I don't have to
increase the FSM parameters, but the documentation isn't 100% clear on
this point.

It's per cluster, ie *not* per-database.

Hmmm ... it seems I have an impossible problem.  I have ~250 databases each with about 2500 relations (as in "select count(1) from pg_class where relname not like 'pg_%'").  That makes roughly 625,000 relations.

But ... for max_fsm_pages, the Postgres manual says, "This setting must be at least 16 * max_fsm_relations. The default is chosen by initdb depending on the amount of available memory, and can range from 20k to 200k pages."

So max_fsm_pages should be 16*625000, or 10,000,000 ... except that the limit is 200,000.  Or is it only the *default* that can be 200,000 max, but you can override and set it to any number you like?

It appears that Postgres 8.3 and earlier can't do garbage collection on a configuration like mine.  Do I misunderstand something?

The parameter is gone in 8.4, BTW.

Both max_fsm_relations and max_fsm_pages?

Thanks,
Craig


--
Sent via pgsql-performance mailing list (pgsql-performance@xxxxxxxxxxxxxx)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-performance

[Postgresql General]     [Postgresql PHP]     [PHP Users]     [PHP Home]     [PHP on Windows]     [Kernel Newbies]     [PHP Classes]     [PHP Books]     [PHP Databases]     [Yosemite]

  Powered by Linux