Postgres 9.1.6 L'indice di errore contiene una pagina zero imprevista nel blocco 0


8

Ho installato la replica di streaming su Postgres 9.1.6 in esecuzione su un server debian e sta andando bene.

Quando provo a eseguire una query sul DB di replica, visualizzo l'errore di seguito:

ERROR:  index "tbl_cust_id_idx" contains unexpected zero page at block 0
HINT:  Please REINDEX it.

Cosa potrebbe causare questo errore?

La domanda è anche pubblicata in /programming/17865135/postgres-9-1-6-error-index-contains-unexpected-zero-page-at-block-0


Puoi eseguire altre domande: SELECT version()oppure SELECT now()?

1
Questo errore viene visualizzato quando ci si connette al database? Puoi connetterti affatto? Se sì, puoi inviare correttamente le query? Altrimenti, questo non sembra molto buono. Quali sono le impostazioni relative a fsync sulla replica? Cosa sappiamo del sistema di archiviazione lì?
dezso

Risposte:


7

Ho appena incontrato lo stesso problema su Postgres 8.3.11. Sebbene non sia stato possibile identificare la causa principale, la correzione era abbastanza semplice:

REINDEX INDEX tbl_cust_id_idx;

Questa pagina contiene suggerimenti su ciò che potrebbe aver causato l'errore, sebbene siano vaghi:

Un indice di tabella indicato è stato danneggiato (potrebbe essere il risultato di postgres recenti o di errori di sistema, mancava spazio libero sul dispositivo, ecc.).

Idealmente sarebbe utile se esistesse qualcosa che possa essere messo in atto per prevenire o correggere in modo proattivo questi errori. Il lato positivo è la prima volta che vediamo questo problema in diversi anni e su centinaia di macchine.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.