Articles in this section

How can a client write both fail with a generation error and have inDoubt=true?

Detail

Normally when a write transaction fails with a definitive server-side error such as generation mismatch, it is expected that the status of the transaction will not be in doubt.

Answer

When a client write times out by not receiving a response from the server within the specified number of milliseconds, the status of the transaction will be set to inDoubt=true as the client has no information about what happened on the server. However, if the write is retried according to the client policy and goes through, it can receive an error such as generation mismatch while still being considered in doubt.

Applies To Earliest Version

Pre 4.9

Applies To Latest Version

Current Version
Was this article helpful?
0 out of 0 found this helpful