
Google Cloud BatchDml
CertifiedExecute multiple DML statements atomically
Google Cloud BatchDml
Execute multiple DML statements atomically
Executes multiple INSERT, UPDATE, or DELETE statements in a single read-write transaction.
type: io.kestra.plugin.gcp.spanner.BatchDmlExamples
Execute batch DML statements
id: spanner_batch_dml
namespace: company.team
tasks:
- id: batch_update
type: io.kestra.plugin.gcp.spanner.BatchDml
projectId: "{{ secret('GCP_PROJECT_ID') }}"
instanceId: my-instance
databaseId: my-database
statements:
- "UPDATE users SET active = true WHERE signup_date > '2023-01-01'"
- "DELETE FROM temp_sessions WHERE expires_at < CURRENT_TIMESTAMP()"
Properties
databaseId *string
The Spanner database ID
instanceId *string
The Spanner instance ID
projectId *string
The GCP project ID
statements *array
The list of SQL DML statements to execute
Statements are executed sequentially without parameter bindings. Parameterized batch DML is not supported.
assets
Assets this task consumes as inputs or produces as outputs, for lineage tracking and the asset graph (Enterprise Edition). A flow declaring this property on a task is rejected in the open-source edition.
io.kestra.core.models.assets.AssetsDeclaration
IGNOREFAILWARNAsset failure behavior
Behavior applied to the task state when a declared asset fails to render, emit, or be persisted (e.g. a lock conflict): FAIL escalates it to FAILED, WARN (default) warns it if it would otherwise succeed, IGNORE leaves the state untouched.
Whether to auto-register assets referenced dynamically at runtime that are not statically declared in inputs or outputs.
The assets consumed as inputs.
io.kestra.core.models.assets.AssetIdentifier
1The assets produced as outputs.
io.kestra.plugin.ee.assets.Dataset
1150{}1150io.kestra.plugin.ee.assets.File
1150{}1150io.kestra.plugin.ee.assets.Table
1150{}1150io.kestra.plugin.ee.assets.VM
1150{}1150io.kestra.core.models.assets.External
1150{}1150io.kestra.core.models.assets.Custom
11501Custom asset type
{}1150emulatorHost string
Spanner emulator host (host: port), for local testing only
When set, the task connects to a local Spanner emulator instead of the real Spanner service.
impersonatedServiceAccount string
The GCP service account to impersonate
scopes array
The GCP scopes to be used
serviceAccount string
The GCP service account
Outputs
affectedRows array
List of counts of affected rows for each statement
totalAffectedRows integer
Total number of rows affected by all statements combined