Description
We should update this page:
http://docs.mongodb.org/manual/reference/write-concern/
and this:
http://docs.mongodb.org/manual/faq/fundamentals/#does-mongodb-support-acid-transactions
to reflect the question posed here if the observed behavior is true:
http://smalldatum.blogspot.com/2014/03/when-does-mongodb-make-transaction.html
That is, if we consider the write fully committed only after it hits the journal, when j=true, then we should warn that another reader may see the write before it is fully committed. In the event of a failure and rollback, later readers may not see the write.
This problem may also affect w=majority writes. In general, we want to guarantee the behavior that once a majority of members have seen the write, it is durable, even across the loss the primary. The problem is, if a majority of replica set nodes don't ack the write, and it's rolled back, someone on the primary may have already seen it.
Essentially, we run READ_UNCOMMITTED. We should document this fact to avoid user confusion.