database corruption question
In the document "Transaction Processing in PostgreSQL"
( http://www.postgresql.org/files/developer/transactions.pdf )
I read :
"Postgres transactions are only guaranteed atomic if a disk page write
is an atomic action. On most modern hard drives that's true if a page
is a physical sector, but most people run with disk pages configured as
8K or so, which makes it a little more dubious whether a page write is
all-or-nothing."
I have a battery-backed disk controller.
In this case:
- can such partial writes happen ?
- I suppose that a file system never splits a 8K page write request
into smaller chunks, and a 8K page will always be fully written ?
- with a battery-backed disk controller, a database never gets
corrupted ?
- Is there a tool that checks if a database is not corrupted ?
Best regards
Nicolas Riesch
maa1666@yahoo.fr writes:
In the document "Transaction Processing in PostgreSQL"
( http://www.postgresql.org/files/developer/transactions.pdf )
That's very, very old information.
I read :
"Postgres transactions are only guaranteed atomic if a disk page write
is an atomic action.
Not true since the addition of full-page images to WAL. These days the
only thing you really need to worry about is whether your disk drive
lies about write-complete. A battery backed write cache is probably
safe enough.
regards, tom lane