Table of Contents

Class CommitPublishIncompleteException

Namespace
Typhon.Engine
Assembly
Typhon.Engine.dll

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)

public CommitPublishIncompleteException(long highLsn, bool durable, Exception innerException)

Parameters

highLsn long

The highest LSN of the transaction's appended batch; 0 when it appended nothing.

durable bool

Whether the batch was confirmed on stable storage.

innerException Exception

The 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

bool

HighLsn

The highest LSN of the transaction's appended batch; 0 when it appended nothing.

public long HighLsn { get; }

Property Value

long