Documentation/upgrades: fix 3.4 guides
@@ -35,7 +35,7 @@ OK
+etcdctl put foo bar
```
-#### Make `ETCDCTL_API=3 etcdctl` default
+#### Make `etcd --enable-v2=false` default
[`etcd --enable-v2=false`](https://github.com/etcd-io/etcd/pull/10935) is now the default.
@@ -87,6 +87,29 @@ _, err := kvc.Get(ctx, "a")
+ if s.Code() == codes.Canceled
```
+#### Require `grpc.WithBlock` for client dial
+
+[The new client balancer][client-design] uses an asynchronous resolver to pass endpoints to the gRPC dial function.
+
+In order to create a client object synchronously with gRPC connection, pass `grpc.WithBlock` to dial options:
+
+```diff
+import (
+ "time"
+ "go.etcd.io/etcd/clientv3"
++ "google.golang.org/grpc"
+)
+
++// "grpc.WithBlock()" to block until the underlying connection is up
+ccfg := clientv3.Config{
+ Endpoints: []string{"localhost:2379"},
+ DialTimeout: time.Second,
++ DialOptions: []grpc.DialOption{grpc.WithBlock()},
+ DialKeepAliveTime: time.Second,
+ DialKeepAliveTimeout: 500 * time.Millisecond,
+}
+```
+
#### Deprecating `etcd_debugging_mvcc_db_total_size_in_bytes` Prometheus metrics
v3.4 promotes `etcd_debugging_mvcc_db_total_size_in_bytes` Prometheus metrics to `etcd_mvcc_db_total_size_in_bytes`, in order to encourage etcd storage monitoring.
@@ -580,3 +603,4 @@ COMMENT
```
[etcd-contact]: https://groups.google.com/forum/#!forum/etcd-dev
+[client-design]: https://github.com/etcd-io/etcd/blob/master/Documentation/learning/design-client.md
