Jeśli martwe krotki ułożyły się ponad to, co można uwzględnić w max_fsm_pages
, zwykły VACUUM nie będzie w stanie uwolnić wszystkiego. Efektem końcowym jest to, że baza danych będzie się rozrastać w miarę upływu czasu w miarę gromadzenia martwej przestrzeni. Uruchomienie VACUUM FULL powinno rozwiązać ten problem. Niestety w przypadku dużej bazy danych może to zająć bardzo dużo czasu.
Jeśli często napotykasz ten problem, musisz częściej odkurzać (automatyczne odkurzanie może tutaj pomóc) lub zwiększyć max_fsm_pages
ustawienie. Podczas uruchamiania VACUUM VERBOSE poinformuje Cię, ile stron zostało zwolnionych i wyświetli ostrzeżenie, jeśli max_fsm_pages
została przekroczona, może to pomóc w ustaleniu, jaka powinna być ta wartość. Więcej informacji znajdziesz w instrukcji. http://www .postgresql.org/docs/8.3/static/runtime-config-resource.html#RUNTIME-CONFIG-RESOURCE-FSM
Na szczęście mapa widoczności w wersji 8.4 rozwiązuje ten problem. Despesz jak zwykle ma świetną historię na ten temat:http://www.depesz.com/index.php/2008/12/08/waiting-for-84-visibility-maps/