Previous change logs can be found at CHANGELOG-3.4.
The minimum recommended etcd versions to run in production are 3.1.11+, 3.2.26+, and 3.3.11+.
See code changes and v3.5 upgrade guide for any breaking changes.
Again, before running upgrades from any previous release, please make sure to read change logs below and v3.5 upgrade guide.
/v3 endpoint.
/v3beta.curl -L http://localhost:2379/v3beta/kv/put -X POST -d '{"key": "Zm9v", "value": "YmFy"}' does work in v3.5. Use curl -L http://localhost:2379/v3/kv/put -X POST -d '{"key": "Zm9v", "value": "YmFy"}' instead.etcd --experimental-enable-v2v3 flag has been deprecated. Use etcd --enable-v2v3 instead.
etcd --experimental-enable-v2v3 flag to etcd --enable-v2v3; v2 storage emulation is now stable.etcd --debug flag has been deprecated. Use etcd --log-level=debug instead.embed.Config.Debug.etcd --log-output flag has been deprecated. Use etcd --log-outputs instead.etcd --logger=zap --log-outputs=stderr is now the default.etcd --logger=capnslog flag value has been deprecated.etcd --logger=zap --log-outputs=default flag value is not supported..
etcd --logger=zap --log-outputs=stderr.etcd --logger=zap --log-outputs=systemd/journal to send logs to the local systemd journal.etcd --logger=capnslog --log-outputs=default redirects server logs to local systemd journal. And if write to journald fails, it writes to os.Stderr as a fallback.os.Stderr, which is inefficient.etcd --log-outputs=stderr is now the default.etcd --log-package-levels flag for capnslog has been deprecated. Now, etcd --logger=zap --log-outputs=stderr is the default.[CLIENT-URL]/config/local/log endpoint has been deprecated, as is etcd --log-package-levels flag.
curl http://127.0.0.1:2379/config/local/log -XPUT -d '{"Level":"DEBUG"}' won't work.etcd --logger=zap --log-outputs=stderr instead.etcd_debugging_mvcc_db_total_size_in_bytes Prometheus metric. Use etcd_mvcc_db_total_size_in_bytes instead.etcd_debugging_mvcc_put_total Prometheus metric. Use etcd_mvcc_put_total instead.etcd_debugging_mvcc_delete_total Prometheus metric. Use etcd_mvcc_delete_total instead.etcd_debugging_mvcc_txn_total Prometheus metric. Use etcd_mvcc_txn_total instead.etcd_debugging_mvcc_range_total Prometheus metric. Use etcd_mvcc_range_total instead./version outputs 3.5.0-pre, instead of 3.4.0+git.See List of metrics for all metrics per release.
Note that any etcd_debugging_* metrics are experimental and subject to change.
etcd_debugging_mvcc_db_total_size_in_bytes Prometheus metric. Use etcd_mvcc_db_total_size_in_bytes instead.etcd_debugging_mvcc_put_total Prometheus metric. Use etcd_mvcc_put_total instead.etcd_debugging_mvcc_delete_total Prometheus metric. Use etcd_mvcc_delete_total instead.etcd_debugging_mvcc_txn_total Prometheus metric. Use etcd_mvcc_txn_total instead.etcd_debugging_mvcc_range_total Prometheus metric. Use etcd_mvcc_range_total instead.etcd_debugging_mvcc_current_revision Prometheus metric.etcd_debugging_mvcc_compact_revision Prometheus metric.etcd --enable-v2v3 flag is now stable.
etcd --experimental-enable-v2v3 has been deprecated.etcd --enable-v2=true --enable-v2v3='' by default, to enable v2 API server that is backed by v2 store.etcd --enable-v2=true --enable-v2v3=/aaa to enable v2 API server that is backed by v3 storage.etcd --enable-v2=false --enable-v2v3='' to disable v2 API server.etcd --enable-v2=false --enable-v2v3=/aaa to disable v2 API server. TODO: error?etcd --enable-v2=true --enable-v2v3=/aaa to enable v2 API server that is backed by v3 storage.embedembed.Config.Debug.
embed.Config.LogLevel instead.embed.Config.ZapLoggerBuilder to allow creating a custom zap logger.clientv3clientv3/concurrency/Mutex. A non-blocking method on Mutex which does not wait to get lock on the Mutex, returns immediately if Mutex is locked by another session./v3 endpoint.
/v3beta.curl -L http://localhost:2379/v3beta/kv/put -X POST -d '{"key": "Zm9v", "value": "YmFy"}' does work in v3.5. Use curl -L http://localhost:2379/v3/kv/put -X POST -d '{"key": "Zm9v", "value": "YmFy"}' instead.google.golang.org/grpc from v1.23.0 to v1.23.1.