PostgreSql - Recuperación ante corte de luz

Después del corte de luz del día 13/10, al levantar nuevamente Guaraní, lo hizo sin dar error.
Sin embargo, detectamos días después, que había sufrido pérdida de información. Además, hubo otros 2 cortes y en cada uno de ellos, si bien levantó sin ningún tipo de alertas, no tiene la información completa. Moraleja: tenemos que volver al último backup del nefasto 13/10.
La pregunta es, si es Wal la solución a este problema, de manera que la única información que se pierde es la que se está gestionando en el momento del corte?, por lo que los usuarios se enteran que el sistema no completó la transacción. De lo contrario resulta imposible identificar la información que se pierde. Hay forma de configurar esto? A Agluien mas le pasó? Ejemplo: el día 20/10 a las 17 horas un docente cargó notas de una cursada en 3W y guardó. A las 6 am del 21/10 se cortó la luz. Al levantar nuevamente Guaraní esa infrmración no estaba (y sí estaba en el backup previo al corte, o sea que el docente lo había cargado correctametne y lo había guardado). Tenemos PostgreSql 9.3
Espero aportes !!!

Hola, Postgres es ACID y nos asegura que luego de un commit con OK la información esta en la base y no se pierde (salvo problemas de disco / hardware). Con esto quiero decir que si hicieron un commit, se corta la luz, levanta Postgres el commit tiene que estar.

Que almacenamiento están utilizando? tienen configurado algún raid? Estan utilizando Windows o Linux? El disco esta utiliznado la cache de escritura? el parametro fsync de postgresql.conf como lo tienen?

Saludos, Nico.

Hola nico, el postgres 9.3 esta en un debian y el parametro fsync=on esta comentado. no utiliza raid guarda en el disco local.
Saludos Esteban

Hola Esteban,

tienen algun UPS para dicho servidor?, el disco es mecanico o estamos hablando de SSD?. Verificaron que no existan problemas en el filesystem luego de los cortes?. En mi experiencia, con discos mecanicos (incluso estando en RAID 1) cuando he observado perdida de datos, ha sido por daños, OK… deberia haber cambiado un disco antes :stuck_out_tongue: … pero a lo que voy es que sin daño en el disco o el filesystem… no deberia haber perdida de datos una vez guardados los mismos.

acotandonos a este ejemplo puntual, descartados problemas de hardware, si no hay ningun mecanismo de restauracion automatizado que pudiera haber pisado con un backup viejo y aceptando que el dato estaba en el backup previo al corte (ergo se habia persistido), la posibilidad que quedaria seria que haya sido borrado manualmente, verificaron que no sucedio esto ultimo mediante auditoria de datos?.

Saludos