I have a SQL Server 2014 database configured as an AlwaysOn synchronous availability group.
Both servers are configured for availability Synchronous commitwith a session timeout of 50 seconds. The secondary is Read-intent onlyreadable secondary.
If I write to the primary, and then immediately read from the secondary (through ApplicationIntent=ReadOnly), I constantly read dirty data (i.e. the state before writing). If I wait about a second between writing and reading, I get the correct data.
Is this the expected behavior? If so, can I do something to make sure that readings from the secondary are relevant?
I would like to use the secondary version of the primary version (as well as for failure) to read in order to reduce the load on the primary.
source
share