Begins a new transaction. This step can often be skipped: Read, ExecuteSql and Commit can begin a new transaction as a side-effect.
For more information about retries and long-running operations, see Understand connectors.
Arguments
Parameters | |
---|---|
session |
Required. The session in which the transaction runs. |
body |
Required. |
Raised exceptions
Exceptions | |
---|---|
ConnectionError |
In case of a network problem (such as DNS failure or refused connection). |
HttpError |
If the response status is >= 400 (excluding 429 and 503). |
TimeoutError |
If a long-running operation takes longer to finish than the specified timeout limit. |
TypeError |
If an operation or function receives an argument of the wrong type. |
ValueError |
If an operation or function receives an argument of the right type but an inappropriate value. For example, a negative timeout. |
Response
If successful, the response contains an instance of Transaction
.
Subworkflow snippet
Some fields might be optional or required. To identify required fields, refer to the API documentation.
YAML
- beginTransaction: call: googleapis.spanner.v1.projects.instances.databases.sessions.beginTransaction args: session: ... body: mutationKey: delete: keySet: all: ... keys: ... ranges: ... table: ... insert: columns: ... table: ... values: ... insertOrUpdate: ... replace: ... update: ... options: excludeTxnFromChangeStreams: ... isolationLevel: ... partitionedDml: ... readOnly: exactStaleness: ... maxStaleness: ... minReadTimestamp: ... readTimestamp: ... returnReadTimestamp: ... strong: ... readWrite: multiplexedSessionPreviousTransactionId: ... readLockMode: ... requestOptions: priority: ... requestTag: ... transactionTag: ... result: beginTransactionResult
JSON
[ { "beginTransaction": { "call": "googleapis.spanner.v1.projects.instances.databases.sessions.beginTransaction", "args": { "session": "...", "body": { "mutationKey": { "delete": { "keySet": { "all": "...", "keys": "...", "ranges": "..." }, "table": "..." }, "insert": { "columns": "...", "table": "...", "values": "..." }, "insertOrUpdate": "...", "replace": "...", "update": "..." }, "options": { "excludeTxnFromChangeStreams": "...", "isolationLevel": "...", "partitionedDml": "...", "readOnly": { "exactStaleness": "...", "maxStaleness": "...", "minReadTimestamp": "...", "readTimestamp": "...", "returnReadTimestamp": "...", "strong": "..." }, "readWrite": { "multiplexedSessionPreviousTransactionId": "...", "readLockMode": "..." } }, "requestOptions": { "priority": "...", "requestTag": "...", "transactionTag": "..." } } }, "result": "beginTransactionResult" } } ]