LastPrimaryIssue
protected RecordedConnectionIssue PrimaryBasedLogViewAdaptor<TLogView, TLogEntry, LastPrimaryIssue Store the last issue that occurred while reading or updating primary. Is null if successful.
Note that the log itself is transient, i.e. not actually saved to storage - only the latest view and some metadata (the log position, and write flags) is stored in the primary. It is safe to interleave calls to this adaptor (using grain scheduler only, of course).
Subclasses override ReadAsync and WriteAsync to read from / write to primary. Calls to the primary are serialized, i.e. never interleave.
protected RecordedConnectionIssue PrimaryBasedLogViewAdaptor<TLogView, TLogEntry, LastPrimaryIssueprotected LogConsistencyStatistics? PrimaryBasedLogViewAdaptor<TLogView, TLogEntry, stats