How are you making the inference that that's the problem? It could very
well be a postgres bug or somebody having used pg_resetxlog or.. ?
Is this to me? Most RAID controllers I’ve seen have been setup with write back for performance and also they also seem to have faulty batteries.
I’m merely stating that the I/O path needs to be validated to insure fsync() actually works — otherwise a power failure will introduce data corruption without doubt.
We know the event was occurred after a power failure; and that event would not have corrupted Postgres in a properly configured system; thus, pointing to a misconfiguration in the system.