Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
[vtadmin] custom discovery resolver (#9977)
* More test fixes: 1. Register `VtctldServer`, not `VtctlServer`. 2. Abuse `GetKeyspace` to allow the client to inspect the listen address of a given server to use in assertions. 3. Building on (2), stop asserting on proxy.host, which will be going away> Signed-off-by: Andrew Mason <andrew@planetscale.com> * Add initial proof-of-concept for custom grpc resolver Signed-off-by: Andrew Mason <andrew@planetscale.com> * Add Options for passing through cluster-specific configs to Resolvers Still need to actually add flags for these, but this will make it easier. Also make some things unexported. Signed-off-by: Andrew Mason <andrew@planetscale.com> * tidy imports Signed-off-by: Andrew Mason <andrew@planetscale.com> * Better, more structured, logging, beginning vtgate/vtsql support Signed-off-by: Andrew Mason <andrew@planetscale.com> * More documentation, plus unexport our resolver implementation Signed-off-by: Andrew Mason <andrew@planetscale.com> * More docs Signed-off-by: Andrew Mason <andrew@planetscale.com> * gut WaitForReady Signed-off-by: Andrew Mason <andrew@planetscale.com> * Add copyright notice Signed-off-by: Andrew Mason <andrew@planetscale.com> * Add unit tests for cluster resolver Signed-off-by: Andrew Mason <andrew@planetscale.com> * Add wrappers to detect ResolveNow calls and remove Sleep from test 🎉 Signed-off-by: Andrew Mason <andrew@planetscale.com> * Document improvement ideas. I'll follow-up on these in a second change Signed-off-by: Andrew Mason <andrew@planetscale.com> * Add *Addrs variants of discovery for gates and vtctlds Signed-off-by: Andrew Mason <andrew@planetscale.com> * Refactors! Better discoveryFunc abstraction and still update addrs with empty list, and tests Signed-off-by: Andrew Mason <andrew@planetscale.com> * Add debug.Debuggable support for resolvers Signed-off-by: Andrew Mason <andrew@planetscale.com> * Use cluster discovery resolver for vtgate/vtsql as well Signed-off-by: Andrew Mason <andrew@planetscale.com> * Fix tests Signed-off-by: Andrew Mason <andrew@planetscale.com> * remove waitforready-related flag and config Signed-off-by: Andrew Mason <andrew@planetscale.com> * post merge cleanup Signed-off-by: Andrew Mason <andrew@planetscale.com> * The big refactor to enable configurable resolver options Signed-off-by: Andrew Mason <andrew@planetscale.com> * remove unnecssary discovery call Signed-off-by: Andrew Mason <andrew@planetscale.com> * remove WithBlock debugging aid Signed-off-by: Andrew Mason <andrew@planetscale.com> * rename resolver debug fields for consistency Signed-off-by: Andrew Mason <andrew@planetscale.com> * Push discovery down to resolver level, update tests Signed-off-by: Andrew Mason <andrew@planetscale.com> * annotate resolver span with addrs Signed-off-by: Andrew Mason <andrew@planetscale.com> * add util function for dial addrs Signed-off-by: Andrew Mason <andrew@planetscale.com> * Remove .host field as it does not have a use anymore Signed-off-by: Andrew Mason <andrew@planetscale.com> * inline vtsql trace helper Signed-off-by: Andrew Mason <andrew@planetscale.com> * Support balancer policies Signed-off-by: Andrew Mason <andrew@planetscale.com> * add link to service config docs Signed-off-by: Andrew Mason <andrew@planetscale.com> * lol ...... Signed-off-by: Andrew Mason <andrew@planetscale.com> * add documentation Signed-off-by: Andrew Mason <andrew@planetscale.com> * Update code to use new target.URL field (all other fields are deprecated) Signed-off-by: Andrew Mason <andrew@planetscale.com> * Update tests with URL field Signed-off-by: Andrew Mason <andrew@planetscale.com>
- Loading branch information