Earlier quoted context omitted.
> MySQL and PG are not truly consistent per default, they don't fsync every writes. Postgres most certainly does fsync by default. It's tru, you can disable it, but there is a big warning about "may corrupt your database" in the config file.
No PG does not fsync every writes, more details here: https://dba.stackexchange.com/questions/254069/how-often-doe... My point is people complain about MongoDB are the one not using it most likely, MongoDB is very different from 10 years ago. I like to remind people that PG did not have an official replication system 10years ago and as of today is still behind MySQL. No DB is perfect, it's about tradeof.
So wal is synced before commit returns, and if you power cycle immediately after, the wal is played back and your transaction is not lost? So it's fine?
It does not need to sync all writes, only the records needed to play back the transaction after restart. This is what all real databases do.