PostgreSQLLa base de données la plus sophistiquée au monde.

51.5. Récupération après un arrêt brutal

Il est généralement suffisant de rejouer les traces WAL pour restaurer l'intégrité d'un index GiST après un arrêt brutal de la base de données. Néanmoins, il existe quelques cas particuliers pour lesquels l'état de l'index n'est pas entièrement reconstruit. L'index reste fonctionnellement correct mais les performances peuvent se trouver dégradées. Lorsque cela arrive, l'index peut être réparé par VACUUM de sa table, ou par reconstruction avec REINDEX. Dans certains cas, un simple VACUUM ne suffit pas et un VACUUM FULL ou un REINDEX est nécessaire. Ce besoin est indiqué par la survenue d'un tel message :

LOG:  index NNN/NNN/NNN needs VACUUM or REINDEX to finish crash recovery

ou le message suivant lors d'insertions dans l'index :

LOG:  index "FOO" needs VACUUM or REINDEX to finish crash recovery

Si un simple VACUUM est incapable de réaliser complètement la récupération, l'avertissement suivant est envoyé :

NOTICE:  index "FOO" needs VACUUM FULL or REINDEX to finish crash recovery