Synchronous commit
Un'impostazione di PostgreSQL che stabilisce quanto sia garantito un COMMIT prima che il client riceva l'OK. In modalità pienamente sincrona si attende che il WAL sia scritto su disco (ed eventualmente confermato da una replica sincrona); si può abbassare il livello per scambiare durabilità con latenza.
Livelli (synchronous_commit): on (predefinito, WAL scaricato su disco locale ed eventuale conferma della replica), remote_apply (la replica lo ha applicato, quindi è leggibile), local (solo disco locale), off (ritorno immediato, WAL scritto poco dopo: in caso di crash si rischia di perdere le ultime transazioni, ma MAI di corrompere i dati). Il trucco: si può impostare per singola transazione, così i pagamenti critici usano on e i log poco importanti off per guadagnare velocità. Con la replica sincrona, decide se il commit attenda o meno la replica (zero perdita di dati). Il classico regolatore tra durabilità e prestazioni.