Class CommitPublishIncompleteException
Thrown when a transaction's records were appended to the WAL — the point of no return (AP-02) — and something failed before its publish completed: the transaction is committed, but only part of it, or none of it, is visible in memory.
public class CommitPublishIncompleteException : DurabilityException, ISerializable
- Inheritance
-
CommitPublishIncompleteException
- Implements
- Inherited Members
Remarks
The transaction reports Committed and is never rolled back: its records are in the log. The engine stops committing (CommitPipelineFailure), keeps its checkpoint below these records, and closes as a crash, so the next open replays them and the commit comes back whole. Reopen the database; do not re-run the transaction. The original failure is the InnerException; HighLsn is the batch's highest LSN (0 when it appended nothing), and Durable says whether its records were confirmed on stable storage before the exception was raised.
Constructors
CommitPublishIncompleteException(long, bool, Exception)
Creates a new CommitPublishIncompleteException.
public CommitPublishIncompleteException(long highLsn, bool durable, Exception innerException)
Parameters
highLsnlongThe highest LSN of the transaction's appended batch; 0 when it appended nothing.
durableboolWhether the batch was confirmed on stable storage.
innerExceptionExceptionThe failure that interrupted the publish.
Properties
Durable
Whether the batch was confirmed on stable storage before this exception was raised.
public bool Durable { get; }
Property Value
HighLsn
The highest LSN of the transaction's appended batch; 0 when it appended nothing.
public long HighLsn { get; }