Wenn sich die toten Tupel über das hinaus gestapelt haben, was in max_fsm_pages
berücksichtigt werden kann , ein normales VAKUUM wird nicht in der Lage sein, alles zu befreien. Das Endergebnis ist, dass die Datenbank im Laufe der Zeit immer größer wird, da sich Totraum weiter ansammelt. Das Ausführen von VACUUM FULL sollte dieses Problem beheben. Leider kann es bei einer großen Datenbank sehr lange dauern.
Wenn dieses Problem häufig auftritt, müssen Sie entweder häufiger saugen (hier kann Autovakuum helfen) oder die max_fsm_pages
erhöhen Einstellung. Beim Ausführen von VACUUM VERBOSE wird Ihnen mitgeteilt, wie viele Seiten freigegeben wurden, und Sie erhalten eine Warnung, wenn max_fsm_pages
überschritten wurde, kann Ihnen dies dabei helfen, diesen Wert zu bestimmen. Weitere Informationen finden Sie im Handbuch. http://www .postgresql.org/docs/8.3/static/runtime-config-resource.html#RUNTIME-CONFIG-RESOURCE-FSM
Glücklicherweise behebt die Sichtbarkeitskarte von 8.4 dieses Problem. Despesz hat wie immer eine großartige Geschichte zu diesem Thema:http://www.depesz.com/index.php/2008/12/08/waiting-for-84-visibility-maps/