From 744d69156b2d2cacbcf0a195d9ee934bbdda84d0 Mon Sep 17 00:00:00 2001 From: Matt Lord Date: Wed, 11 Oct 2023 15:26:16 -0400 Subject: [PATCH 1/4] Add vtctldclient info to the 18.0 summary Signed-off-by: Matt Lord --- changelog/18.0/18.0.0/summary.md | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/changelog/18.0/18.0.0/summary.md b/changelog/18.0/18.0.0/summary.md index 835d5db021a..f6a68af6c3f 100644 --- a/changelog/18.0/18.0.0/summary.md +++ b/changelog/18.0/18.0.0/summary.md @@ -5,6 +5,8 @@ - **[Major Changes](#major-changes)** - **[Breaking Changes](#breaking-changes)** - [Local examples now use etcd v3 storage and API](#local-examples-etcd-v3) + - **[Deprecations and Removals](#deprecations-and-removals)** + - [Legacy Clients](#legacy-clients) - **[New command line flags and behavior](#new-flag)** - [VTOrc flag `--allow-emergency-reparent`](#new-flag-toggle-ers) - [VTOrc flag `--change-tablets-with-errant-gtid-to-drained`](#new-flag-errant-gtid-convert) @@ -47,6 +49,30 @@ removed this legacy etcd usage and instead use the new (default) etcd v3 storage examples in any sort of long-term non-testing capacity, then you will need to explicitly use the v2 storage and API mode or [migrate your existing data from v2 to v3](https://etcd.io/docs/v3.5/tutorials/how-to-migrate/). +### Deprecations and Removals + +#### Legacy Clients + +`vtctldclient` is our new modern *Vitess controller daemon* (`vtctld`) *client* – which you will use to perform commands +and take actions in your Vitess clusters. It is [replacing the legacy `vtctl`/`vtctlclient` clients](https://vitess.io/docs/18.0/reference/vtctldclient-transition/overview/). +Some of the benefits are: + +- [Dedicated RPCs for each command](https://github.com/vitessio/vitess/blob/release-18.0/proto/vtctlservice.proto#L32-L353) +that are used between `vtctldclient` and `vtctld` – this offers clean separation of commands and makes it easier to +develop new features without impacting other commands. This also presents an [API that other clients (both Vitess and +3rd party) can use to interface with Vitess](https://vitess.io/blog/2023-04-17-vtctldserver-api/). +- Use of modern frameworks: [`pFlag`](https://github.com/spf13/pflag#readme), [`Cobra`](https://cobra.dev), and [`Viper`](https://github.com/spf13/viper#readme). +This makes development easier while also offering a better UX. For example, this offers a way to use +[configuration files](https://vitess.io/docs/18.0/reference/viper/config-files/) with support for +[dynamic configuration](https://vitess.io/docs/18.0/reference/viper/dynamic-values/) ([see also](https://github.com/vitessio/vitess/blob/release-18.0/doc/viper/viper.md)). +- As noted above, the [reference documentation](https://vitess.io/docs/reference/programs/vtctldclient/) is now built +through code. This removes a burden from developers while helping users by ensuring the docs are always correct and up-to-date. + +In Vitess 18.0 we have completed migrating all client commands to `vtctldclient` – the last ones being the [OnlineDDL](https://github.com/vitessio/vitess/issues/13712) +and [VReplication](https://github.com/vitessio/vitess/issues/12152) commands. With this work now completed, the +legacy `vtctl`/`vtctlclient` binaries are now fully deprecated and we plan to remove them in Vitess 19.0. You should +[begin your transition](https://vitess.io/docs/18.0/reference/vtctldclient-transition/) before upgrading to 18.0. + ### New command line flags and behavior #### VTOrc flag `--allow-emergency-reparent` From 1f344c80a652e09efa5d9232a9363883483b290a Mon Sep 17 00:00:00 2001 From: Matt Lord Date: Wed, 11 Oct 2023 15:31:20 -0400 Subject: [PATCH 2/4] Correction Signed-off-by: Matt Lord --- changelog/18.0/18.0.0/summary.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/changelog/18.0/18.0.0/summary.md b/changelog/18.0/18.0.0/summary.md index f6a68af6c3f..76d444e5901 100644 --- a/changelog/18.0/18.0.0/summary.md +++ b/changelog/18.0/18.0.0/summary.md @@ -65,8 +65,8 @@ develop new features without impacting other commands. This also presents an [AP This makes development easier while also offering a better UX. For example, this offers a way to use [configuration files](https://vitess.io/docs/18.0/reference/viper/config-files/) with support for [dynamic configuration](https://vitess.io/docs/18.0/reference/viper/dynamic-values/) ([see also](https://github.com/vitessio/vitess/blob/release-18.0/doc/viper/viper.md)). -- As noted above, the [reference documentation](https://vitess.io/docs/reference/programs/vtctldclient/) is now built -through code. This removes a burden from developers while helping users by ensuring the docs are always correct and up-to-date. +- The [reference documentation](https://vitess.io/docs/reference/programs/vtctldclient/) is now built through code. This +removes a burden from developers while helping users by ensuring the docs are always correct and up-to-date. In Vitess 18.0 we have completed migrating all client commands to `vtctldclient` – the last ones being the [OnlineDDL](https://github.com/vitessio/vitess/issues/13712) and [VReplication](https://github.com/vitessio/vitess/issues/12152) commands. With this work now completed, the From 761835a6b4c1707a44a9a7de2631dc3367b3a87e Mon Sep 17 00:00:00 2001 From: Matt Lord Date: Wed, 11 Oct 2023 20:40:30 -0400 Subject: [PATCH 3/4] Address review comments Signed-off-by: Matt Lord --- changelog/18.0/18.0.0/summary.md | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/changelog/18.0/18.0.0/summary.md b/changelog/18.0/18.0.0/summary.md index 76d444e5901..a4c44cefc5a 100644 --- a/changelog/18.0/18.0.0/summary.md +++ b/changelog/18.0/18.0.0/summary.md @@ -5,8 +5,6 @@ - **[Major Changes](#major-changes)** - **[Breaking Changes](#breaking-changes)** - [Local examples now use etcd v3 storage and API](#local-examples-etcd-v3) - - **[Deprecations and Removals](#deprecations-and-removals)** - - [Legacy Clients](#legacy-clients) - **[New command line flags and behavior](#new-flag)** - [VTOrc flag `--allow-emergency-reparent`](#new-flag-toggle-ers) - [VTOrc flag `--change-tablets-with-errant-gtid-to-drained`](#new-flag-errant-gtid-convert) @@ -16,6 +14,7 @@ - **[VTAdmin](#vtadmin)** - [Updated to node v18.16.0](#update-node) - **[Deprecations and Deletions](#deprecations-and-deletions)** + - [Legacy Client Binaries](#legacy-client-binaries) - [Deprecated Flags](#deprecated-flags) - [Deprecated Stats](#deprecated-stats) - [Deleted Flags](#deleted-flags) @@ -51,10 +50,10 @@ and API mode or [migrate your existing data from v2 to v3](https://etcd.io/docs/ ### Deprecations and Removals -#### Legacy Clients +#### Legacy Client Binaries `vtctldclient` is our new modern *Vitess controller daemon* (`vtctld`) *client* – which you will use to perform commands -and take actions in your Vitess clusters. It is [replacing the legacy `vtctl`/`vtctlclient` clients](https://vitess.io/docs/18.0/reference/vtctldclient-transition/overview/). +and take actions in your Vitess clusters. It is [replacing the legacy `vtctl`/`vtctlclient` binaries](https://vitess.io/docs/18.0/reference/vtctldclient-transition/overview/). Some of the benefits are: - [Dedicated RPCs for each command](https://github.com/vitessio/vitess/blob/release-18.0/proto/vtctlservice.proto#L32-L353) From 5a25f1c8f196ae083ae3601cf62b1bf65eb88601 Mon Sep 17 00:00:00 2001 From: Matt Lord Date: Wed, 11 Oct 2023 20:46:05 -0400 Subject: [PATCH 4/4] Finish addressing review comments Signed-off-by: Matt Lord --- changelog/18.0/18.0.0/summary.md | 46 +++++++++++++++----------------- 1 file changed, 22 insertions(+), 24 deletions(-) diff --git a/changelog/18.0/18.0.0/summary.md b/changelog/18.0/18.0.0/summary.md index a4c44cefc5a..1adf55a8683 100644 --- a/changelog/18.0/18.0.0/summary.md +++ b/changelog/18.0/18.0.0/summary.md @@ -48,30 +48,6 @@ removed this legacy etcd usage and instead use the new (default) etcd v3 storage examples in any sort of long-term non-testing capacity, then you will need to explicitly use the v2 storage and API mode or [migrate your existing data from v2 to v3](https://etcd.io/docs/v3.5/tutorials/how-to-migrate/). -### Deprecations and Removals - -#### Legacy Client Binaries - -`vtctldclient` is our new modern *Vitess controller daemon* (`vtctld`) *client* – which you will use to perform commands -and take actions in your Vitess clusters. It is [replacing the legacy `vtctl`/`vtctlclient` binaries](https://vitess.io/docs/18.0/reference/vtctldclient-transition/overview/). -Some of the benefits are: - -- [Dedicated RPCs for each command](https://github.com/vitessio/vitess/blob/release-18.0/proto/vtctlservice.proto#L32-L353) -that are used between `vtctldclient` and `vtctld` – this offers clean separation of commands and makes it easier to -develop new features without impacting other commands. This also presents an [API that other clients (both Vitess and -3rd party) can use to interface with Vitess](https://vitess.io/blog/2023-04-17-vtctldserver-api/). -- Use of modern frameworks: [`pFlag`](https://github.com/spf13/pflag#readme), [`Cobra`](https://cobra.dev), and [`Viper`](https://github.com/spf13/viper#readme). -This makes development easier while also offering a better UX. For example, this offers a way to use -[configuration files](https://vitess.io/docs/18.0/reference/viper/config-files/) with support for -[dynamic configuration](https://vitess.io/docs/18.0/reference/viper/dynamic-values/) ([see also](https://github.com/vitessio/vitess/blob/release-18.0/doc/viper/viper.md)). -- The [reference documentation](https://vitess.io/docs/reference/programs/vtctldclient/) is now built through code. This -removes a burden from developers while helping users by ensuring the docs are always correct and up-to-date. - -In Vitess 18.0 we have completed migrating all client commands to `vtctldclient` – the last ones being the [OnlineDDL](https://github.com/vitessio/vitess/issues/13712) -and [VReplication](https://github.com/vitessio/vitess/issues/12152) commands. With this work now completed, the -legacy `vtctl`/`vtctlclient` binaries are now fully deprecated and we plan to remove them in Vitess 19.0. You should -[begin your transition](https://vitess.io/docs/18.0/reference/vtctldclient-transition/) before upgrading to 18.0. - ### New command line flags and behavior #### VTOrc flag `--allow-emergency-reparent` @@ -134,6 +110,28 @@ on https://nodejs.org/en/blog/release/v18.16.0. ### Deprecations and Deletions +#### Legacy Client Binaries + +`vtctldclient` is our new modern *Vitess controller daemon* (`vtctld`) *client* – which you will use to perform commands +and take actions in your Vitess clusters. It is [replacing the legacy `vtctl`/`vtctlclient` binaries](https://vitess.io/docs/18.0/reference/vtctldclient-transition/overview/). +Some of the benefits are: + +- [Dedicated RPCs for each command](https://github.com/vitessio/vitess/blob/release-18.0/proto/vtctlservice.proto#L32-L353) +that are used between `vtctldclient` and `vtctld` – this offers clean separation of commands and makes it easier to +develop new features without impacting other commands. This also presents an [API that other clients (both Vitess and +3rd party) can use to interface with Vitess](https://vitess.io/blog/2023-04-17-vtctldserver-api/). +- Use of modern frameworks: [`pFlag`](https://github.com/spf13/pflag#readme), [`Cobra`](https://cobra.dev), and [`Viper`](https://github.com/spf13/viper#readme). +This makes development easier while also offering a better UX. For example, this offers a way to use +[configuration files](https://vitess.io/docs/18.0/reference/viper/config-files/) with support for +[dynamic configuration](https://vitess.io/docs/18.0/reference/viper/dynamic-values/) ([see also](https://github.com/vitessio/vitess/blob/release-18.0/doc/viper/viper.md)). +- The [reference documentation](https://vitess.io/docs/reference/programs/vtctldclient/) is now built through code. This +removes a burden from developers while helping users by ensuring the docs are always correct and up-to-date. + +In Vitess 18.0 we have completed migrating all client commands to `vtctldclient` – the last ones being the [OnlineDDL](https://github.com/vitessio/vitess/issues/13712) +and [VReplication](https://github.com/vitessio/vitess/issues/12152) commands. With this work now completed, the +legacy `vtctl`/`vtctlclient` binaries are now fully deprecated and we plan to remove them in Vitess 19.0. You should +[begin your transition](https://vitess.io/docs/18.0/reference/vtctldclient-transition/) before upgrading to 18.0. + #### Deprecated Command Line Flags Throttler related `vttablet` flags: