Get desktop application:
View/edit binary Protocol Buffers messages
CloseSessionRequest is the payload to CloseSession.
Used as request type in: vtgateservice.Vitess.CloseSession
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.
CloseSessionResponse is the returned value from CloseSession.
Used as response type in: vtgateservice.Vitess.CloseSession
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).
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.
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.
ExecuteMultiRequest is the payload to ExecuteMulti.
Used as request type in: vtgateservice.Vitess.ExecuteMulti
caller_id identifies the caller. This is the effective caller ID, set by the application to further identify the caller.
sql contains the set of queries to execute.
session carries the session state.
ExecuteMultiResponse is the returned value from ExecuteMulti.
Used as response type in: vtgateservice.Vitess.ExecuteMulti
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 contain the query results. There can be some results even if the error is set.
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.
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.
PrepareData keeps the prepared statement and other information related for execution of it.
Used in:
PrepareRequest is the payload to Prepare.
Used as request type in: vtgateservice.Vitess.Prepare
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.
PrepareResponse is the returned value from Prepare.
Used as response type in: vtgateservice.Vitess.Prepare
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.
fields contains the fields, only set if error is unset.
ReadAfterWrite contains information regarding gtid set and timeout Also if the gtid information needs to be passed to client.
Used in:
ResolveTransactionRequest is the payload to 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.
(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.
last_lock_heartbeat keep tracks of when last lock heartbeat was sent.
read_after_write tracks the ReadAfterWrite settings for this session.
DDL strategy
Session UUID
enable_system_settings defines if we can use reserved connections.
query_timeout is the maximum amount of time a query is permitted to run
MigrationContext
Used in:
reserved connection if a dedicated connection is needed
rows_affected tracks if any query has modified the rows.
StreamExecuteMultiRequest is the payload to StreamExecuteMulti.
Used as request type in: vtgateservice.Vitess.StreamExecuteMulti
caller_id identifies the caller. This is the effective caller ID, set by the application to further identify the caller.
sql contains the set of queries to execute.
session carries the session state.
StreamExecuteMultiResponse is the returned value from StreamExecuteMulti.
Used as response type in: vtgateservice.Vitess.StreamExecuteMulti
result contains the result set or an error if one occurred while executing the query.
more_results is set to true if there are more results to follow after this one has concluded.
new_result signifies a new result has started with this packet.
session is the updated session information.
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.
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.
session is the updated session information.
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.
Used in:
align streams
how often heartbeats must be sent when idle (seconds)
stop streams on a reshard (journal event)
if specified, these cells (comma-separated) are used to pick source tablets from. defaults to the cell of the vtgate serving the VStream API.
When set, all new row events from the `heartbeat` table, for all shards, in the sidecardb will be streamed.
Include reshard journal events in the stream.
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