TransactionInfo
class
Namespace: Orleans.Transactions
Carries the identity, timing, participant access, and commit state of a transaction.
[Orleans.GenerateSerializer]public sealed class TransactionInfoConstructors
TransactionInfoInitializes an empty transaction information instance.TransactionInfo(Guid, DateTime, DateTime, bool)Initializes transaction information with its identity and scheduling timestamps.TransactionInfo(TransactionInfo)Initializes a transaction branch with the transaction-wide metadata from another instance.
Properties
IdGets the string representation of the transaction identifier.IsReadOnlyGets a value indicating whether the transaction is declared read-only.OriginalExceptionGets or sets the serialized first exception which requires the transaction to abort.ParticipantsGets participant access counts keyed by participant identifier.PriorityGets or sets the timestamp used to order the transaction when acquiring participant locks.TimeStampGets or sets the transaction's causal timestamp, which advances to include participant timestamps.TransactionIdGets the unique transaction identifier.TryToCommitGets a value indicating whether the transaction delegate voted to commit.UseExclusiveLockGets or sets a value indicating whether participant reads acquire exclusive locks.
Methods
ForkCreates transaction information for a forked call and records that the call is pending.Join(TransactionInfo)Queues a completed transaction branch for reconciliation with this instance.MustAbort(Serializer<OrleansTransactionAbortedException>)Determines whether the transaction must abort because an exception was recorded or forked calls remain outstanding.ReconcilePendingMerges all joined transaction branches and updates the outstanding-call count.RecordException(Exception, Serializer<OrleansTransactionAbortedException>)Records the first exception raised by transaction execution as a serialized transaction abort exception.RecordRead(ParticipantId, DateTime)Records a participant read and advances the transaction timestamp when required.RecordWrite(ParticipantId, DateTime)Records a participant write and advances the transaction timestamp when required.ToStringReturns a diagnostic representation of the transaction and its participant accesses.
Fields
PendingCallsGets or sets the number of forked calls which have not yet been reconciled.
