Thread: max_fsm_relations
PostgreSQL 8.1.3 (windows), 8.1.9 - 8.1.10 (linux). I have databases, what are vacuumed using cron very regularry (vacuumdb -a -f ...) and I know when should do this. Automatic vacuuming is off. There are thousands of tables in one cluster (for ex. 10000). If I do vacuuming manually, I can see the warning: NOTICE: max_fsm_relations(1000) equals the number of relations checked HINT: You have at least 1000 relations. Consider increasing the configuration parameter "max_fsm_relations". But all is working properly. Do I need really to increase max_fsm_relations (and corresponding start values) for postgresql server ? If I should "to consider" only it looks, that it is not needed in my situation. I'm right ? Brgds Adam
=?ISO-8859-2?Q?Adam_Rad=B3owski?= <adamr@informatyka.gdansk.pl> writes: > PostgreSQL 8.1.3 (windows), 8.1.9 - 8.1.10 (linux). > I have databases, what are vacuumed using cron very regularry (vacuumdb > -a -f ...) and I know when should do this. Automatic vacuuming is off. > There are thousands of tables in one cluster (for ex. 10000). If I do > vacuuming manually, I can see the warning: > NOTICE: max_fsm_relations(1000) equals the number of relations checked > HINT: You have at least 1000 relations. Consider increasing the > configuration parameter "max_fsm_relations". > But all is working properly. Only for small values of "properly". You will be seeing table bloat over time if you don't make the FSM large enough. regards, tom lane
So, are You suggesting, that at the time of full database vacuuming, some of tables are not vacuumed, when "max_fsm_relations" is to small ? Thanks for Your fast answer. Adam Tom Lane pisze: > =?ISO-8859-2?Q?Adam_Rad=B3owski?= <adamr@informatyka.gdansk.pl> writes: >> PostgreSQL 8.1.3 (windows), 8.1.9 - 8.1.10 (linux). >> I have databases, what are vacuumed using cron very regularry (vacuumdb >> -a -f ...) and I know when should do this. Automatic vacuuming is off. >> There are thousands of tables in one cluster (for ex. 10000). If I do >> vacuuming manually, I can see the warning: >> NOTICE: max_fsm_relations(1000) equals the number of relations checked >> HINT: You have at least 1000 relations. Consider increasing the >> configuration parameter "max_fsm_relations". >> But all is working properly. > > Only for small values of "properly". You will be seeing table bloat > over time if you don't make the FSM large enough. > > regards, tom lane >
Adam Radłowski wrote: > So, are You suggesting, that at the time of full database vacuuming, > some of tables are not vacuumed, when "max_fsm_relations" is to small ? No. They will all be vacuumed. The difference is that the space reclaimed by vacuum will not be reused unless it is recorded by the FSM. -- Alvaro Herrera http://www.CommandPrompt.com/ PostgreSQL Replication, Consulting, Custom Development, 24x7 support
Now I got full information. Big thanks. Adam Alvaro Herrera pisze: > Adam Radłowski wrote: >> So, are You suggesting, that at the time of full database vacuuming, >> some of tables are not vacuumed, when "max_fsm_relations" is to small ? > > No. They will all be vacuumed. The difference is that the space > reclaimed by vacuum will not be reused unless it is recorded by the FSM. >