vitess-gh/proto
Frances Thai dab32ddc55
[VTAdmin] Cherry Pick Topology Browser (#11518)
* Add web side of topology components

Signed-off-by: notfelineit <notfelineit@gmail.com>

* Add GetTopologyPath

Signed-off-by: notfelineit <notfelineit@gmail.com>

* Add protos

Signed-off-by: notfelineit <notfelineit@gmail.com>

* Add comment explaining why name is not needed at toplevel topo path

Signed-off-by: notfelineit <notfelineit@gmail.com>

* Add GetTopologyPath to vtadmin

Signed-off-by: notfelineit <notfelineit@gmail.com>

* Modify node code for non recursive

Signed-off-by: notfelineit <notfelineit@gmail.com>

* Update logic for GetTopologyPath

Signed-off-by: notfelineit <notfelineit@gmail.com>

* Render correct depth for nodes

Signed-off-by: notfelineit <notfelineit@gmail.com>

* Add tests TestGetTopologyPath

Signed-off-by: notfelineit <notfelineit@gmail.com>

* Add GetTopologyPath command

Signed-off-by: notfelineit <notfelineit@gmail.com>

* Run lint prettier fix

Signed-off-by: notfelineit <notfelineit@gmail.com>

* Consolidate DecodeContent to vt/topo package - can't put in vt/topo/topoproto because of import cycle

Signed-off-by: notfelineit <notfelineit@gmail.com>

* Add rbac check for TopologyResource

Signed-off-by: notfelineit <notfelineit@gmail.com>

* Update DecodeContent of zkcmd.go

Signed-off-by: notfelineit <notfelineit@gmail.com>

* Update help text

Signed-off-by: notfelineit <notfelineit@gmail.com>

* Run make proto again

Signed-off-by: notfelineit <notfelineit@gmail.com>

* Run lint prettier fix

Signed-off-by: notfelineit <notfelineit@gmail.com>

Signed-off-by: notfelineit <notfelineit@gmail.com>
Signed-off-by: Florent Poinsard <florent.poinsard@outlook.fr>
Co-authored-by: Florent Poinsard <florent.poinsard@outlook.fr>
2022-10-18 16:14:30 -07:00
..
README.md
automation.proto
automationservice.proto
binlogdata.proto Partial Movetables: allow moving a table one shard at a time (#9987) 2022-09-23 12:15:12 +02:00
binlogservice.proto
logutil.proto
mysqlctl.proto
query.proto Add tracking session state changes for transaction start (#11061) 2022-08-22 14:39:34 +03:00
queryservice.proto
replicationdata.proto Simply Replication Status proto conversions (#10926) 2022-08-08 19:52:38 +05:30
tableacl.proto
tabletmanagerdata.proto VDiff2: Add Stop Action (#10830) 2022-07-26 17:26:17 -04:00
tabletmanagerservice.proto Adds RPCs to vttablet that vtorc requires (#10464) 2022-06-20 10:53:04 +05:30
throttlerdata.proto
throttlerservice.proto Delete all legacy sharding related code (#10278) 2022-07-07 13:52:32 -04:00
topodata.proto Remove v2 resharding fields (#10409) 2022-06-10 08:47:56 -07:00
vschema.proto Partial Movetables: allow moving a table one shard at a time (#9987) 2022-09-23 12:15:12 +02:00
vtadmin.proto [VTAdmin] Cherry Pick Topology Browser (#11518) 2022-10-18 16:14:30 -07:00
vtctldata.proto [VTAdmin] Cherry Pick Topology Browser (#11518) 2022-10-18 16:14:30 -07:00
vtctlservice.proto [VTAdmin] Cherry Pick Topology Browser (#11518) 2022-10-18 16:14:30 -07:00
vtgate.proto delete unused flags and handling of deprecated protobuf fields (#10612) 2022-07-06 10:05:45 -07:00
vtgateservice.proto
vtrpc.proto Allow non-SSL callers of VTGate RPC APIs to specify group information for the CallerID (#11260) 2022-09-29 14:08:45 +05:30
vttest.proto Remove v2 resharding fields (#10409) 2022-06-10 08:47:56 -07:00
vttime.proto
workflow.proto

README.md

Vitess Protobuf Definitions

This directory contains all Vitess protobuf definitions.

Our protobuf messages are both used as wire format (e.g. query.proto) and for storage (e.g. topodata.proto).

RPC messages and service definitions are in separate files (e.g. vtgate.proto and vtgateservice.proto) on purpose because our internal deployment does not use gRPC.

Style Guide

Before creating new messages or services, please make yourself familiar with the style of the existing definitions first.

Additionally, new definitions must adhere to the Google Cloud API Design Guide: https://cloud.google.com/apis/design/

Comments

We are more strict than the Design Guide on the format for comments. Similar to comments for Go types or fields, protobuf comments must start with the name. For example:

// TabletAlias is a globally unique tablet identifier.
message TabletAlias {
  // cell is the cell (or datacenter) the tablet is in.
  string cell = 1;
  ...
}

Note that the Design Guide also has the following ask:

If the field value is required, input only, output only, it must be documented at the start of the field description. By default, all fields and parameters are optional.

Here's an example which combines this ask with our stricter comments style:

// ExecuteKeyspaceIdsRequest is the payload to ExecuteKeyspaceIds.
message ExecuteKeyspaceIdsRequest {
  ...
  // Required. keyspace to target the query to.
  string keyspace = 4;
  ...
}

Note that most of our existing files (as of March 2017) do not have e.g. "Required." comments. Nonetheless, new files should follow this where applicable.