public final class StartBatchTransactionAction extends GeneratedMessageV3 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<MessageType,BuilderType> > AbstractMessage > GeneratedMessageV3 > StartBatchTransactionActionImplements
StartBatchTransactionActionOrBuilderStatic Fields
BATCH_TXN_TIME_FIELD_NUMBER
public static final int BATCH_TXN_TIME_FIELD_NUMBER
Field Value | |
---|---|
Type | Description |
int |
CLOUD_DATABASE_ROLE_FIELD_NUMBER
public static final int CLOUD_DATABASE_ROLE_FIELD_NUMBER
Field Value | |
---|---|
Type | Description |
int |
TID_FIELD_NUMBER
public static final int TID_FIELD_NUMBER
Field Value | |
---|---|
Type | Description |
int |
Static Methods
getDefaultInstance()
public static StartBatchTransactionAction getDefaultInstance()
Returns | |
---|---|
Type | Description |
StartBatchTransactionAction |
getDescriptor()
public static final Descriptors.Descriptor getDescriptor()
Returns | |
---|---|
Type | Description |
Descriptor |
newBuilder()
public static StartBatchTransactionAction.Builder newBuilder()
Returns | |
---|---|
Type | Description |
StartBatchTransactionAction.Builder |
newBuilder(StartBatchTransactionAction prototype)
public static StartBatchTransactionAction.Builder newBuilder(StartBatchTransactionAction prototype)
Parameter | |
---|---|
Name | Description |
prototype | StartBatchTransactionAction |
Returns | |
---|---|
Type | Description |
StartBatchTransactionAction.Builder |
parseDelimitedFrom(InputStream input)
public static StartBatchTransactionAction parseDelimitedFrom(InputStream input)
Parameter | |
---|---|
Name | Description |
input | InputStream |
Returns | |
---|---|
Type | Description |
StartBatchTransactionAction |
Exceptions | |
---|---|
Type | Description |
IOException |
parseDelimitedFrom(InputStream input, ExtensionRegistryLite extensionRegistry)
public static StartBatchTransactionAction parseDelimitedFrom(InputStream input, ExtensionRegistryLite extensionRegistry)
Parameters | |
---|---|
Name | Description |
input | InputStream |
extensionRegistry | ExtensionRegistryLite |
Returns | |
---|---|
Type | Description |
StartBatchTransactionAction |
Exceptions | |
---|---|
Type | Description |
IOException |
parseFrom(byte[] data)
public static StartBatchTransactionAction parseFrom(byte[] data)
Parameter | |
---|---|
Name | Description |
data | byte[] |
Returns | |
---|---|
Type | Description |
StartBatchTransactionAction |
Exceptions | |
---|---|
Type | Description |
InvalidProtocolBufferException |
parseFrom(byte[] data, ExtensionRegistryLite extensionRegistry)
public static StartBatchTransactionAction parseFrom(byte[] data, ExtensionRegistryLite extensionRegistry)
Parameters | |
---|---|
Name | Description |
data | byte[] |
extensionRegistry | ExtensionRegistryLite |
Returns | |
---|---|
Type | Description |
StartBatchTransactionAction |
Exceptions | |
---|---|
Type | Description |
InvalidProtocolBufferException |
parseFrom(ByteString data)
public static StartBatchTransactionAction parseFrom(ByteString data)
Parameter | |
---|---|
Name | Description |
data | ByteString |
Returns | |
---|---|
Type | Description |
StartBatchTransactionAction |
Exceptions | |
---|---|
Type | Description |
InvalidProtocolBufferException |
parseFrom(ByteString data, ExtensionRegistryLite extensionRegistry)
public static StartBatchTransactionAction parseFrom(ByteString data, ExtensionRegistryLite extensionRegistry)
Parameters | |
---|---|
Name | Description |
data | ByteString |
extensionRegistry | ExtensionRegistryLite |
Returns | |
---|---|
Type | Description |
StartBatchTransactionAction |
Exceptions | |
---|---|
Type | Description |
InvalidProtocolBufferException |
parseFrom(CodedInputStream input)
public static StartBatchTransactionAction parseFrom(CodedInputStream input)
Parameter | |
---|---|
Name | Description |
input | CodedInputStream |
Returns | |
---|---|
Type | Description |
StartBatchTransactionAction |
Exceptions | |
---|---|
Type | Description |
IOException |
parseFrom(CodedInputStream input, ExtensionRegistryLite extensionRegistry)
public static StartBatchTransactionAction parseFrom(CodedInputStream input, ExtensionRegistryLite extensionRegistry)
Parameters | |
---|---|
Name | Description |
input | CodedInputStream |
extensionRegistry | ExtensionRegistryLite |
Returns | |
---|---|
Type | Description |
StartBatchTransactionAction |
Exceptions | |
---|---|
Type | Description |
IOException |
parseFrom(InputStream input)
public static StartBatchTransactionAction parseFrom(InputStream input)
Parameter | |
---|---|
Name | Description |
input | InputStream |
Returns | |
---|---|
Type | Description |
StartBatchTransactionAction |
Exceptions | |
---|---|
Type | Description |
IOException |
parseFrom(InputStream input, ExtensionRegistryLite extensionRegistry)
public static StartBatchTransactionAction parseFrom(InputStream input, ExtensionRegistryLite extensionRegistry)
Parameters | |
---|---|
Name | Description |
input | InputStream |
extensionRegistry | ExtensionRegistryLite |
Returns | |
---|---|
Type | Description |
StartBatchTransactionAction |
Exceptions | |
---|---|
Type | Description |
IOException |
parseFrom(ByteBuffer data)
public static StartBatchTransactionAction parseFrom(ByteBuffer data)
Parameter | |
---|---|
Name | Description |
data | ByteBuffer |
Returns | |
---|---|
Type | Description |
StartBatchTransactionAction |
Exceptions | |
---|---|
Type | Description |
InvalidProtocolBufferException |
parseFrom(ByteBuffer data, ExtensionRegistryLite extensionRegistry)
public static StartBatchTransactionAction parseFrom(ByteBuffer data, ExtensionRegistryLite extensionRegistry)
Parameters | |
---|---|
Name | Description |
data | ByteBuffer |
extensionRegistry | ExtensionRegistryLite |
Returns | |
---|---|
Type | Description |
StartBatchTransactionAction |
Exceptions | |
---|---|
Type | Description |
InvalidProtocolBufferException |
parser()
public static Parser<StartBatchTransactionAction> parser()
Returns | |
---|---|
Type | Description |
Parser<StartBatchTransactionAction> |
Methods
equals(Object obj)
public boolean equals(Object obj)
Parameter | |
---|---|
Name | Description |
obj | Object |
Returns | |
---|---|
Type | Description |
boolean |
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. |
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 |
getParamCase()
public StartBatchTransactionAction.ParamCase getParamCase()
Returns | |
---|---|
Type | Description |
StartBatchTransactionAction.ParamCase |
getParserForType()
public Parser<StartBatchTransactionAction> getParserForType()
Returns | |
---|---|
Type | Description |
Parser<StartBatchTransactionAction> |
getSerializedSize()
public int getSerializedSize()
Returns | |
---|---|
Type | Description |
int |
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. |
hashCode()
public int hashCode()
Returns | |
---|---|
Type | Description |
int |
internalGetFieldAccessorTable()
protected GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable()
Returns | |
---|---|
Type | Description |
FieldAccessorTable |
isInitialized()
public final boolean isInitialized()
Returns | |
---|---|
Type | Description |
boolean |
newBuilderForType()
public StartBatchTransactionAction.Builder newBuilderForType()
Returns | |
---|---|
Type | Description |
StartBatchTransactionAction.Builder |
newBuilderForType(GeneratedMessageV3.BuilderParent parent)
protected StartBatchTransactionAction.Builder newBuilderForType(GeneratedMessageV3.BuilderParent parent)
Parameter | |
---|---|
Name | Description |
parent | BuilderParent |
Returns | |
---|---|
Type | Description |
StartBatchTransactionAction.Builder |
newInstance(GeneratedMessageV3.UnusedPrivateParameter unused)
protected Object newInstance(GeneratedMessageV3.UnusedPrivateParameter unused)
Parameter | |
---|---|
Name | Description |
unused | UnusedPrivateParameter |
Returns | |
---|---|
Type | Description |
Object |
toBuilder()
public StartBatchTransactionAction.Builder toBuilder()
Returns | |
---|---|
Type | Description |
StartBatchTransactionAction.Builder |
writeTo(CodedOutputStream output)
public void writeTo(CodedOutputStream output)
Parameter | |
---|---|
Name | Description |
output | CodedOutputStream |
Exceptions | |
---|---|
Type | Description |
IOException |