MySQL 8.4.2
Source Code Documentation
|
Topics in this section:
This section provides detailed information about how X Protocol defines messages.
Messages have a:
message_payload
of length .length - 1
length
– length of the whole messagemessage_type
– type of the message_payload
message_payload
– the message's payload encoded using Google Protobuf
if not otherwise noted.message_payload
is generated from the protobuf files using protoc
: mysqlx.proto
]mysqlx_connection.proto
]mysqlx_session.proto
]mysqlx_crud.proto
]mysqlx_sql.proto
]mysqlx_resultset.proto
]mysqlx_expr.proto
]mysqlx_datatypes.proto
]mysqlx_expect.proto
]mysqlx_notice.proto
]message_type
can be taken from the Mysqlx::ClientMessages for client-messages and from Mysqlx::ServerMessages of server-side messages. C++
they are exposed in mysqlx.pb.h
in the ClientMessages
class. Messages usually appear in a sequence. Each initial message (one referenced by Mysqlx::ClientMessages) is associated with a set of possible following messages.
A message sequence either:
At any time in between local Notices may be sent by the server as part of the message sequence.
Global Notices may be sent by the server at any time.
After the client sent the initial message, the server may send a Mysqlx::Error message at any time to terminate the current message sequence.