First of all run the VACUUM FULL ANALYZE and that should hopefully help you get rid of this problem without changing the max_fsm_pages. Other then this I will recommend you to have the autovacuuming process in place for proper database maintenance.
When I do a full vacuum of the database cluster, at the end I am getting the message as follows:
psql:dba_task.sql:1: INFO: free space map contains 8033993 pages in 1023 relations DETAIL: A total of 8000000 page slots are in use (including overhead). 8201952 page slots are required to track all free space. Current limits are: 8000000 page slots, 32768 relations, using 49054 KB. psql:dba_task.sql:1: NOTICE: number of page slots needed (8201952) exceeds max_fsm_pages (8000000) HINT: Consider increasing the configuration parameter "max_fsm_pages" to a value over 8201952.
My questions are:
1. With out increasing the max_fsm_pages, can I bring down the need for fsm_pages by deleting unnecessary tables?
2. As, the database grows the need for max_fsm_pages grows too, what is the best practice?
3. As a new postgres DBA, how should one manage this parameter?