Get desktop application:
View/edit binary Protocol Buffers messages
CommitOrder is used to designate which of the ShardSessions get used for transactions.
NORMAL is the default commit order.
PRE is used to designate pre_sessions.
POST is used to designate post_sessions.
AUTOCOMMIT is used to run the statement as autocommitted transaction.
ExecuteBatchRequest is the payload to ExecuteBatch.
Used as request type in: vtgateservice.Vitess.ExecuteBatch
caller_id identifies the caller. This is the effective caller ID, set by the application to further identify the caller.
session carries the session state.
queries is a list of query and bind variables to execute.
These values are deprecated. Use session instead. TODO(sougou): remove in 3.1
ExecuteBatchResponse is the returned value from ExecuteBatch.
Used as response type in: vtgateservice.Vitess.ExecuteBatch
error contains an application level error if necessary. Note the session may have changed, even when an error is returned (for instance if a database integrity error happened).
session is the updated session information.
results contains the query results, only set if application level error is unset.
ExecuteRequest is the payload to Execute.
Used as request type in: vtgateservice.Vitess.Execute
caller_id identifies the caller. This is the effective caller ID, set by the application to further identify the caller.
session carries the session state.
query is the query and bind variables to execute.
These values are deprecated. Use session instead. TODO(sougou): remove in 3.1
ExecuteResponse is the returned value from Execute.
Used as response type in: vtgateservice.Vitess.Execute
error contains an application level error if necessary. Note the session may have changed, even when an error is returned (for instance if a database integrity error happened).
session is the updated session information.
result contains the query result, only set if error is unset.
ResolveTransactionRequest is the payload to ResolveTransaction.
Used as request type in: vtgateservice.Vitess.ResolveTransaction
caller_id identifies the caller. This is the effective caller ID, set by the application to further identify the caller.
dtid is the dtid of the transaction to be resolved.
ResolveTransactionResponse is the returned value from Rollback.
Used as response type in: vtgateservice.Vitess.ResolveTransaction
(message has no fields)
Session objects are exchanged like cookies through various calls to VTGate. The behavior differs between V2 & V3 APIs. V3 APIs are Execute, ExecuteBatch and StreamExecute. All other APIs are V2. For the V3 APIs, the session must be sent with every call to Execute or ExecuteBatch. For the V2 APIs, Begin does not accept a session. It instead returns a brand new one with in_transaction set to true. After a call to Commit or Rollback, the session can be discarded. If you're not in a transaction, Session is an optional parameter for the V2 APIs.
Used in: , , , ,
in_transaction is set to true if the session is in a transaction.
shard_sessions keep track of per-shard transaction info.
autocommit specifies if the session is in autocommit mode. This is used only for V3.
target_string is the target expressed as a string. Valid names are: keyspace:shard@target, keyspace@target or @target. This is used only for V3.
options is used only for V3.
transaction_mode specifies the current transaction mode.
warnings contains non-fatal warnings from the previous query
pre_sessions contains sessions that have to be committed first.
post_sessions contains sessions that have to be committed last.
last_insert_id keeps track of the last seen insert_id for this session
found_rows keeps track of how many rows the last query returned
user_defined_variables contains all the @variables defined for this session
system_variables keeps track of all session variables set for this connection TODO: systay should we keep this so we can apply it ordered?
row_count keeps track of the last seen rows affected for this session
Stores savepoint and release savepoint calls inside a transaction and is reset once transaction is committed or rolled back.
in_reserved_conn is set to true if the session should be using reserved connections.
lock_session keep tracks of shard on which the lock query is sent.
Used in:
reserved connection if a dedicated connection is needed
StreamExecuteRequest is the payload to StreamExecute.
Used as request type in: vtgateservice.Vitess.StreamExecute
caller_id identifies the caller. This is the effective caller ID, set by the application to further identify the caller.
query is the query and bind variables to execute.
These values are deprecated. Use session instead. TODO(sougou): remove in 3.1
session carries the session state.
StreamExecuteResponse is the returned value from StreamExecute. The session is currently not returned because StreamExecute is not expected to modify it.
Used as response type in: vtgateservice.Vitess.StreamExecute
result contains the result data. The first value contains only Fields information. The next values contain the actual rows, a few values per result.
TransactionMode controls the execution of distributed transaction across multiple shards.
Used in:
UNSPECIFIED uses the transaction mode set by the VTGate flag 'transaction_mode'.
SINGLE disallows distributed transactions.
MULTI allows distributed transactions with best effort commit.
TWOPC is for distributed transactions with atomic commits.
VStreamRequest is the payload for VStream.
Used as request type in: vtgateservice.Vitess.VStream
position specifies the starting point of the bin log positions as well as the keyspace-shards to pull events from. position is of the form 'ks1:0@MySQL56/<mysql_pos>|ks2:-80@MySQL56/<mysql_pos>'.
VStreamResponse is streamed by VStream.
Used as response type in: vtgateservice.Vitess.VStream