[erlang-questions] mnesia sync_transactions not fsynced?

Matthew Sackman matthew@REDACTED
Thu Oct 27 13:36:25 CEST 2011


On Thu, Oct 27, 2011 at 01:24:59PM +0200, Dan Gudmundsson wrote:
> The only guarantee you have is that complete commits will be written to disc.

Choice of language here is very important.

Do you agree that the lack of a disk_log:sync means that the complete
commits that are actually written to disk may be a subset of the commits
that mnesia completes?

> I.e. if you do several operations inside your transaction, either all
> of them or none
> will be save to that disc (or at least read).

Yes - that last part is very important. It is almost certainly the case
that incomplete transactions are written to disk, it's just they're
detected on startup to be incomplete and thus ignored. That is not the
same as saying "only complete commits are written to disk".

Matthew



More information about the erlang-questions mailing list