Google Cloud Spanner v1 API - Class TransactionOptions (5.2.0)

public sealed class TransactionOptions : IMessage<TransactionOptions>, IEquatable<TransactionOptions>, IDeepCloneable<TransactionOptions>, IBufferMessage, IMessage

Reference documentation and code samples for the Google Cloud Spanner v1 API class TransactionOptions.

Options to use for transactions.

Inheritance

object > TransactionOptions

Namespace

Google.Cloud.Spanner.V1

Assembly

Google.Cloud.Spanner.V1.dll

Constructors

TransactionOptions()

public TransactionOptions()

TransactionOptions(TransactionOptions)

public TransactionOptions(TransactionOptions other)
Parameter
Name Description
other TransactionOptions

Properties

ExcludeTxnFromChangeStreams

public bool ExcludeTxnFromChangeStreams { get; set; }

When exclude_txn_from_change_streams is set to true, it prevents read or write transactions from being tracked in change streams.

  • If the DDL option allow_txn_exclusion is set to true, then the updates made within this transaction aren't recorded in the change stream.

  • If you don't set the DDL option allow_txn_exclusion or if it's set to false, then the updates made within this transaction are recorded in the change stream.

When exclude_txn_from_change_streams is set to false or not set, modifications from this transaction are recorded in all change streams that are tracking columns modified by these transactions.

The exclude_txn_from_change_streams option can only be specified for read-write or partitioned DML transactions, otherwise the API returns an INVALID_ARGUMENT error.

Property Value
Type Description
bool

IsolationLevel

public TransactionOptions.Types.IsolationLevel IsolationLevel { get; set; }

Isolation level for the transaction.

Property Value
Type Description
TransactionOptionsTypesIsolationLevel

ModeCase

public TransactionOptions.ModeOneofCase ModeCase { get; }
Property Value
Type Description
TransactionOptionsModeOneofCase

PartitionedDml

public TransactionOptions.Types.PartitionedDml PartitionedDml { get; set; }

Partitioned DML transaction.

Authorization to begin a Partitioned DML transaction requires spanner.databases.beginPartitionedDmlTransaction permission on the session resource.

Property Value
Type Description
TransactionOptionsTypesPartitionedDml

ReadOnly

public TransactionOptions.Types.ReadOnly ReadOnly { get; set; }

Transaction does not write.

Authorization to begin a read-only transaction requires spanner.databases.beginReadOnlyTransaction permission on the session resource.

Property Value
Type Description
TransactionOptionsTypesReadOnly

ReadWrite

public TransactionOptions.Types.ReadWrite ReadWrite { get; set; }

Transaction may write.

Authorization to begin a read-write transaction requires spanner.databases.beginOrRollbackReadWriteTransaction permission on the session resource.

Property Value
Type Description
TransactionOptionsTypesReadWrite