public static final class StartBatchTransactionAction.Builder extends GeneratedMessageV3.Builder<StartBatchTransactionAction.Builder> implements StartBatchTransactionActionOrBuilder
Starts a batch read-only transaction in executor. Successful outcomes of this action will contain batch_txn_id--the identificator that can be used to start the same transaction in other Executors to parallelize partition processing.
Example of a batch read flow:
- Start batch transaction with a timestamp (StartBatchTransactionAction)
- Generate database partitions for a read or query (GenerateDbPartitionsForReadAction/GenerateDbPartitionsForQueryAction)
- Call ExecutePartitionAction for some or all partitions, process rows
Clean up the transaction (CloseBatchTransactionAction).
More sophisticated example, with parallel processing:
- Start batch transaction with a timestamp (StartBatchTransactionAction), note the returned BatchTransactionId
- Generate database partitions for a read or query (GenerateDbPartitionsForReadAction/GenerateDbPartitionsForQueryAction)
Distribute the partitions over a pool of workers, along with the transaction ID.
In each worker: 4-1. StartBatchTransactionAction with the given transaction ID 4-2. ExecutePartitionAction for each partition it got, process read results 4-3. Close (not cleanup) the transaction (CloseBatchTransactionAction).
When all workers are done:
Cleanup the transaction (CloseBatchTransactionAction). This can be done either by the last worker to finish the job, or by the main Executor that initialized this transaction in the first place. It is also possible to clean it up with a brand new Executor -- just execute StartBatchTransactionAction with the ID, then clean it up right away.
Cleaning up is optional, but recommended.
Protobuf type google.spanner.executor.v1.StartBatchTransactionAction
Inheritance
Object > AbstractMessageLite.Builder<MessageType,BuilderType> > AbstractMessage.Builder<BuilderType> > GeneratedMessageV3.Builder > StartBatchTransactionAction.BuilderImplements
StartBatchTransactionActionOrBuilderStatic Methods
getDescriptor()
public static final Descriptors.Descriptor getDescriptor()
Returns | |
---|---|
Type | Description |
Descriptor |
Methods
addRepeatedField(Descriptors.FieldDescriptor field, Object value)
public StartBatchTransactionAction.Builder addRepeatedField(Descriptors.FieldDescriptor field, Object value)
Parameters | |
---|---|
Name | Description |
field |
FieldDescriptor |
value |
Object |
Returns | |
---|---|
Type | Description |
StartBatchTransactionAction.Builder |
build()
public StartBatchTransactionAction build()
Returns | |
---|---|
Type | Description |
StartBatchTransactionAction |
buildPartial()
public StartBatchTransactionAction buildPartial()
Returns | |
---|---|
Type | Description |
StartBatchTransactionAction |
clear()
public StartBatchTransactionAction.Builder clear()
Returns | |
---|---|
Type | Description |
StartBatchTransactionAction.Builder |
clearBatchTxnTime()
public StartBatchTransactionAction.Builder clearBatchTxnTime()
The exact timestamp to start the batch transaction.
.google.protobuf.Timestamp batch_txn_time = 1;
Returns | |
---|---|
Type | Description |
StartBatchTransactionAction.Builder |
clearCloudDatabaseRole()
public StartBatchTransactionAction.Builder clearCloudDatabaseRole()
Database role to assume while performing this action. Setting the database_role will enforce additional role-based access checks on this action.
string cloud_database_role = 3;
Returns | |
---|---|
Type | Description |
StartBatchTransactionAction.Builder |
This builder for chaining. |
clearField(Descriptors.FieldDescriptor field)
public StartBatchTransactionAction.Builder clearField(Descriptors.FieldDescriptor field)
Parameter | |
---|---|
Name | Description |
field |
FieldDescriptor |
Returns | |
---|---|
Type | Description |
StartBatchTransactionAction.Builder |
clearOneof(Descriptors.OneofDescriptor oneof)
public StartBatchTransactionAction.Builder clearOneof(Descriptors.OneofDescriptor oneof)
Parameter | |
---|---|
Name | Description |
oneof |
OneofDescriptor |
Returns | |
---|---|
Type | Description |
StartBatchTransactionAction.Builder |
clearParam()
public StartBatchTransactionAction.Builder clearParam()
Returns | |
---|---|
Type | Description |
StartBatchTransactionAction.Builder |
clearTid()
public StartBatchTransactionAction.Builder clearTid()
ID of a batch read-only transaction. It can be used to start the same batch transaction on multiple executors and parallelize partition processing.
bytes tid = 2;
Returns | |
---|---|
Type | Description |
StartBatchTransactionAction.Builder |
This builder for chaining. |
clone()
public StartBatchTransactionAction.Builder clone()
Returns | |
---|---|
Type | Description |
StartBatchTransactionAction.Builder |
getBatchTxnTime()
public Timestamp getBatchTxnTime()
The exact timestamp to start the batch transaction.
.google.protobuf.Timestamp batch_txn_time = 1;
Returns | |
---|---|
Type | Description |
Timestamp |
The batchTxnTime. |
getBatchTxnTimeBuilder()
public Timestamp.Builder getBatchTxnTimeBuilder()
The exact timestamp to start the batch transaction.
.google.protobuf.Timestamp batch_txn_time = 1;
Returns | |
---|---|
Type | Description |
Builder |
getBatchTxnTimeOrBuilder()
public TimestampOrBuilder getBatchTxnTimeOrBuilder()
The exact timestamp to start the batch transaction.
.google.protobuf.Timestamp batch_txn_time = 1;
Returns | |
---|---|
Type | Description |
TimestampOrBuilder |
getCloudDatabaseRole()
public String getCloudDatabaseRole()
Database role to assume while performing this action. Setting the database_role will enforce additional role-based access checks on this action.
string cloud_database_role = 3;
Returns | |
---|---|
Type | Description |
String |
The cloudDatabaseRole. |
getCloudDatabaseRoleBytes()
public ByteString getCloudDatabaseRoleBytes()
Database role to assume while performing this action. Setting the database_role will enforce additional role-based access checks on this action.
string cloud_database_role = 3;
Returns | |
---|---|
Type | Description |
ByteString |
The bytes for cloudDatabaseRole. |
getDefaultInstanceForType()
public StartBatchTransactionAction getDefaultInstanceForType()
Returns | |
---|---|
Type | Description |
StartBatchTransactionAction |
getDescriptorForType()
public Descriptors.Descriptor getDescriptorForType()
Returns | |
---|---|
Type | Description |
Descriptor |
getParamCase()
public StartBatchTransactionAction.ParamCase getParamCase()
Returns | |
---|---|
Type | Description |
StartBatchTransactionAction.ParamCase |
getTid()
public ByteString getTid()
ID of a batch read-only transaction. It can be used to start the same batch transaction on multiple executors and parallelize partition processing.
bytes tid = 2;
Returns | |
---|---|
Type | Description |
ByteString |
The tid. |
hasBatchTxnTime()
public boolean hasBatchTxnTime()
The exact timestamp to start the batch transaction.
.google.protobuf.Timestamp batch_txn_time = 1;
Returns | |
---|---|
Type | Description |
boolean |
Whether the batchTxnTime field is set. |
hasTid()
public boolean hasTid()
ID of a batch read-only transaction. It can be used to start the same batch transaction on multiple executors and parallelize partition processing.
bytes tid = 2;
Returns | |
---|---|
Type | Description |
boolean |
Whether the tid field is set. |
internalGetFieldAccessorTable()
protected GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable()
Returns | |
---|---|
Type | Description |
FieldAccessorTable |
isInitialized()
public final boolean isInitialized()
Returns | |
---|---|
Type | Description |
boolean |
mergeBatchTxnTime(Timestamp value)
public StartBatchTransactionAction.Builder mergeBatchTxnTime(Timestamp value)
The exact timestamp to start the batch transaction.
.google.protobuf.Timestamp batch_txn_time = 1;
Parameter | |
---|---|
Name | Description |
value |
Timestamp |
Returns | |
---|---|
Type | Description |
StartBatchTransactionAction.Builder |
mergeFrom(CodedInputStream input, ExtensionRegistryLite extensionRegistry)
public StartBatchTransactionAction.Builder mergeFrom(CodedInputStream input, ExtensionRegistryLite extensionRegistry)
Parameters | |
---|---|
Name | Description |
input |
CodedInputStream |
extensionRegistry |
ExtensionRegistryLite |
Returns | |
---|---|
Type | Description |
StartBatchTransactionAction.Builder |
Exceptions | |
---|---|
Type | Description |
IOException |
mergeFrom(Message other)
public StartBatchTransactionAction.Builder mergeFrom(Message other)
Parameter | |
---|---|
Name | Description |
other |
Message |
Returns | |
---|---|
Type | Description |
StartBatchTransactionAction.Builder |
mergeFrom(StartBatchTransactionAction other)
public StartBatchTransactionAction.Builder mergeFrom(StartBatchTransactionAction other)
Parameter | |
---|---|
Name | Description |
other |
StartBatchTransactionAction |
Returns | |
---|---|
Type | Description |
StartBatchTransactionAction.Builder |
mergeUnknownFields(UnknownFieldSet unknownFields)
public final StartBatchTransactionAction.Builder mergeUnknownFields(UnknownFieldSet unknownFields)
Parameter | |
---|---|
Name | Description |
unknownFields |
UnknownFieldSet |
Returns | |
---|---|
Type | Description |
StartBatchTransactionAction.Builder |
setBatchTxnTime(Timestamp value)
public StartBatchTransactionAction.Builder setBatchTxnTime(Timestamp value)
The exact timestamp to start the batch transaction.
.google.protobuf.Timestamp batch_txn_time = 1;
Parameter | |
---|---|
Name | Description |
value |
Timestamp |
Returns | |
---|---|
Type | Description |
StartBatchTransactionAction.Builder |
setBatchTxnTime(Timestamp.Builder builderForValue)
public StartBatchTransactionAction.Builder setBatchTxnTime(Timestamp.Builder builderForValue)
The exact timestamp to start the batch transaction.
.google.protobuf.Timestamp batch_txn_time = 1;
Parameter | |
---|---|
Name | Description |
builderForValue |
Builder |
Returns | |
---|---|
Type | Description |
StartBatchTransactionAction.Builder |
setCloudDatabaseRole(String value)
public StartBatchTransactionAction.Builder setCloudDatabaseRole(String value)
Database role to assume while performing this action. Setting the database_role will enforce additional role-based access checks on this action.
string cloud_database_role = 3;
Parameter | |
---|---|
Name | Description |
value |
String The cloudDatabaseRole to set. |
Returns | |
---|---|
Type | Description |
StartBatchTransactionAction.Builder |
This builder for chaining. |
setCloudDatabaseRoleBytes(ByteString value)
public StartBatchTransactionAction.Builder setCloudDatabaseRoleBytes(ByteString value)
Database role to assume while performing this action. Setting the database_role will enforce additional role-based access checks on this action.
string cloud_database_role = 3;
Parameter | |
---|---|
Name | Description |
value |
ByteString The bytes for cloudDatabaseRole to set. |
Returns | |
---|---|
Type | Description |
StartBatchTransactionAction.Builder |
This builder for chaining. |
setField(Descriptors.FieldDescriptor field, Object value)
public StartBatchTransactionAction.Builder setField(Descriptors.FieldDescriptor field, Object value)
Parameters | |
---|---|
Name | Description |
field |
FieldDescriptor |
value |
Object |
Returns | |
---|---|
Type | Description |
StartBatchTransactionAction.Builder |
setRepeatedField(Descriptors.FieldDescriptor field, int index, Object value)
public StartBatchTransactionAction.Builder setRepeatedField(Descriptors.FieldDescriptor field, int index, Object value)
Parameters | |
---|---|
Name | Description |
field |
FieldDescriptor |
index |
int |
value |
Object |
Returns | |
---|---|
Type | Description |
StartBatchTransactionAction.Builder |
setTid(ByteString value)
public StartBatchTransactionAction.Builder setTid(ByteString value)
ID of a batch read-only transaction. It can be used to start the same batch transaction on multiple executors and parallelize partition processing.
bytes tid = 2;
Parameter | |
---|---|
Name | Description |
value |
ByteString The tid to set. |
Returns | |
---|---|
Type | Description |
StartBatchTransactionAction.Builder |
This builder for chaining. |
setUnknownFields(UnknownFieldSet unknownFields)
public final StartBatchTransactionAction.Builder setUnknownFields(UnknownFieldSet unknownFields)
Parameter | |
---|---|
Name | Description |
unknownFields |
UnknownFieldSet |
Returns | |
---|---|
Type | Description |
StartBatchTransactionAction.Builder |