mirror of
https://github.com/etcd-io/etcd.git
synced 2024-09-27 06:25:44 +00:00
CHANGELOG: update
Signed-off-by: Gyuho Lee <gyuhox@gmail.com>
This commit is contained in:
parent
056b03ee1a
commit
12ce877c6d
@ -3,6 +3,21 @@
|
|||||||
Previous change logs can be found at [CHANGELOG-3.0](https://github.com/coreos/etcd/blob/master/CHANGELOG-3.0.md).
|
Previous change logs can be found at [CHANGELOG-3.0](https://github.com/coreos/etcd/blob/master/CHANGELOG-3.0.md).
|
||||||
|
|
||||||
|
|
||||||
|
## [v3.1.15](https://github.com/coreos/etcd/releases/tag/v3.1.15) (TBD 2018-05)
|
||||||
|
|
||||||
|
See [code changes](https://github.com/coreos/etcd/compare/v3.1.14...v3.1.15) and [v3.1 upgrade guide](https://github.com/coreos/etcd/blob/master/Documentation/upgrades/upgrade_3_1.md) for any breaking changes. **Again, before running upgrades from any previous release, please make sure to read change logs below and [v3.1 upgrade guide](https://github.com/coreos/etcd/blob/master/Documentation/upgrades/upgrade_3_1.md).**
|
||||||
|
|
||||||
|
### etcd server
|
||||||
|
|
||||||
|
- Purge old [`*.snap.db` snapshot files](https://github.com/coreos/etcd/pull/7967).
|
||||||
|
- Previously, etcd did not respect `--max-snapshots` flag to purge old `*.snap.db` files.
|
||||||
|
- Now, etcd purges old `*.snap.db` files to keep maximum `--max-snapshots` number of files on disk.
|
||||||
|
|
||||||
|
### Go
|
||||||
|
|
||||||
|
- Compile with [*Go 1.8.7*](https://golang.org/doc/devel/release.html#go1.8).
|
||||||
|
|
||||||
|
|
||||||
## [v3.1.14](https://github.com/coreos/etcd/releases/tag/v3.1.14) (2018-04-24)
|
## [v3.1.14](https://github.com/coreos/etcd/releases/tag/v3.1.14) (2018-04-24)
|
||||||
|
|
||||||
See [code changes](https://github.com/coreos/etcd/compare/v3.1.13...v3.1.14) and [v3.1 upgrade guide](https://github.com/coreos/etcd/blob/master/Documentation/upgrades/upgrade_3_1.md) for any breaking changes. **Again, before running upgrades from any previous release, please make sure to read change logs below and [v3.1 upgrade guide](https://github.com/coreos/etcd/blob/master/Documentation/upgrades/upgrade_3_1.md).**
|
See [code changes](https://github.com/coreos/etcd/compare/v3.1.13...v3.1.14) and [v3.1 upgrade guide](https://github.com/coreos/etcd/blob/master/Documentation/upgrades/upgrade_3_1.md) for any breaking changes. **Again, before running upgrades from any previous release, please make sure to read change logs below and [v3.1 upgrade guide](https://github.com/coreos/etcd/blob/master/Documentation/upgrades/upgrade_3_1.md).**
|
||||||
@ -11,7 +26,7 @@ See [code changes](https://github.com/coreos/etcd/compare/v3.1.13...v3.1.14) and
|
|||||||
|
|
||||||
- Add [`etcd_server_is_leader`](https://github.com/coreos/etcd/pull/9587) Prometheus metric.
|
- Add [`etcd_server_is_leader`](https://github.com/coreos/etcd/pull/9587) Prometheus metric.
|
||||||
|
|
||||||
### `etcd`
|
### etcd server
|
||||||
|
|
||||||
- Add [`--initial-election-tick-advance`](https://github.com/coreos/etcd/pull/9591) flag to configure initial election tick fast-forward.
|
- Add [`--initial-election-tick-advance`](https://github.com/coreos/etcd/pull/9591) flag to configure initial election tick fast-forward.
|
||||||
- By default, `--initial-election-tick-advance=true`, then local member fast-forwards election ticks to speed up "initial" leader election trigger.
|
- By default, `--initial-election-tick-advance=true`, then local member fast-forwards election ticks to speed up "initial" leader election trigger.
|
||||||
@ -51,7 +66,7 @@ See [code changes](https://github.com/coreos/etcd/compare/v3.1.12...v3.1.13) and
|
|||||||
|
|
||||||
See [code changes](https://github.com/coreos/etcd/compare/v3.1.11...v3.1.12) and [v3.1 upgrade guide](https://github.com/coreos/etcd/blob/master/Documentation/upgrades/upgrade_3_1.md) for any breaking changes. **Again, before running upgrades from any previous release, please make sure to read change logs below and [v3.1 upgrade guide](https://github.com/coreos/etcd/blob/master/Documentation/upgrades/upgrade_3_1.md).**
|
See [code changes](https://github.com/coreos/etcd/compare/v3.1.11...v3.1.12) and [v3.1 upgrade guide](https://github.com/coreos/etcd/blob/master/Documentation/upgrades/upgrade_3_1.md) for any breaking changes. **Again, before running upgrades from any previous release, please make sure to read change logs below and [v3.1 upgrade guide](https://github.com/coreos/etcd/blob/master/Documentation/upgrades/upgrade_3_1.md).**
|
||||||
|
|
||||||
### Fixed: v3
|
### etcd server
|
||||||
|
|
||||||
- Fix [`mvcc` "unsynced" watcher restore operation](https://github.com/coreos/etcd/pull/9297).
|
- Fix [`mvcc` "unsynced" watcher restore operation](https://github.com/coreos/etcd/pull/9297).
|
||||||
- "unsynced" watcher is watcher that needs to be in sync with events that have happened.
|
- "unsynced" watcher is watcher that needs to be in sync with events that have happened.
|
||||||
@ -68,7 +83,7 @@ See [code changes](https://github.com/coreos/etcd/compare/v3.1.11...v3.1.12) and
|
|||||||
|
|
||||||
See [code changes](https://github.com/coreos/etcd/compare/v3.1.10...v3.1.11) and [v3.1 upgrade guide](https://github.com/coreos/etcd/blob/master/Documentation/upgrades/upgrade_3_1.md) for any breaking changes. **Again, before running upgrades from any previous release, please make sure to read change logs below and [v3.1 upgrade guide](https://github.com/coreos/etcd/blob/master/Documentation/upgrades/upgrade_3_1.md).**
|
See [code changes](https://github.com/coreos/etcd/compare/v3.1.10...v3.1.11) and [v3.1 upgrade guide](https://github.com/coreos/etcd/blob/master/Documentation/upgrades/upgrade_3_1.md) for any breaking changes. **Again, before running upgrades from any previous release, please make sure to read change logs below and [v3.1 upgrade guide](https://github.com/coreos/etcd/blob/master/Documentation/upgrades/upgrade_3_1.md).**
|
||||||
|
|
||||||
### Fixed: v3
|
### etcd server
|
||||||
|
|
||||||
- [#8411](https://github.com/coreos/etcd/issues/8411),[#8806](https://github.com/coreos/etcd/pull/8806) backport "mvcc: sending events after restore"
|
- [#8411](https://github.com/coreos/etcd/issues/8411),[#8806](https://github.com/coreos/etcd/pull/8806) backport "mvcc: sending events after restore"
|
||||||
- [#8009](https://github.com/coreos/etcd/issues/8009),[#8902](https://github.com/coreos/etcd/pull/8902) backport coreos/bbolt v1.3.1-coreos.5
|
- [#8009](https://github.com/coreos/etcd/issues/8009),[#8902](https://github.com/coreos/etcd/pull/8902) backport coreos/bbolt v1.3.1-coreos.5
|
||||||
@ -97,7 +112,7 @@ See [code changes](https://github.com/coreos/etcd/compare/v3.1.9...v3.1.10) and
|
|||||||
|
|
||||||
See [code changes](https://github.com/coreos/etcd/compare/v3.1.8...v3.1.9) and [v3.1 upgrade guide](https://github.com/coreos/etcd/blob/master/Documentation/upgrades/upgrade_3_1.md) for any breaking changes. **Again, before running upgrades from any previous release, please make sure to read change logs below and [v3.1 upgrade guide](https://github.com/coreos/etcd/blob/master/Documentation/upgrades/upgrade_3_1.md).**
|
See [code changes](https://github.com/coreos/etcd/compare/v3.1.8...v3.1.9) and [v3.1 upgrade guide](https://github.com/coreos/etcd/blob/master/Documentation/upgrades/upgrade_3_1.md) for any breaking changes. **Again, before running upgrades from any previous release, please make sure to read change logs below and [v3.1 upgrade guide](https://github.com/coreos/etcd/blob/master/Documentation/upgrades/upgrade_3_1.md).**
|
||||||
|
|
||||||
### Fixed
|
### etcd server
|
||||||
|
|
||||||
- Allow v2 snapshot over 512MB.
|
- Allow v2 snapshot over 512MB.
|
||||||
|
|
||||||
@ -128,13 +143,10 @@ See [code changes](https://github.com/coreos/etcd/compare/v3.1.6...v3.1.7) and [
|
|||||||
|
|
||||||
See [code changes](https://github.com/coreos/etcd/compare/v3.1.5...v3.1.6) and [v3.1 upgrade guide](https://github.com/coreos/etcd/blob/master/Documentation/upgrades/upgrade_3_1.md) for any breaking changes. **Again, before running upgrades from any previous release, please make sure to read change logs below and [v3.1 upgrade guide](https://github.com/coreos/etcd/blob/master/Documentation/upgrades/upgrade_3_1.md).**
|
See [code changes](https://github.com/coreos/etcd/compare/v3.1.5...v3.1.6) and [v3.1 upgrade guide](https://github.com/coreos/etcd/blob/master/Documentation/upgrades/upgrade_3_1.md) for any breaking changes. **Again, before running upgrades from any previous release, please make sure to read change logs below and [v3.1 upgrade guide](https://github.com/coreos/etcd/blob/master/Documentation/upgrades/upgrade_3_1.md).**
|
||||||
|
|
||||||
### Other
|
### etcd server
|
||||||
|
|
||||||
- Remove auth check in Status API.
|
|
||||||
|
|
||||||
### Fixed
|
|
||||||
|
|
||||||
- Fill in Auth API response header.
|
- Fill in Auth API response header.
|
||||||
|
- Remove auth check in Status API.
|
||||||
|
|
||||||
### Go
|
### Go
|
||||||
|
|
||||||
@ -145,15 +157,15 @@ See [code changes](https://github.com/coreos/etcd/compare/v3.1.5...v3.1.6) and [
|
|||||||
|
|
||||||
See [code changes](https://github.com/coreos/etcd/compare/v3.1.4...v3.1.5) and [v3.1 upgrade guide](https://github.com/coreos/etcd/blob/master/Documentation/upgrades/upgrade_3_1.md) for any breaking changes. **Again, before running upgrades from any previous release, please make sure to read change logs below and [v3.1 upgrade guide](https://github.com/coreos/etcd/blob/master/Documentation/upgrades/upgrade_3_1.md).**
|
See [code changes](https://github.com/coreos/etcd/compare/v3.1.4...v3.1.5) and [v3.1 upgrade guide](https://github.com/coreos/etcd/blob/master/Documentation/upgrades/upgrade_3_1.md) for any breaking changes. **Again, before running upgrades from any previous release, please make sure to read change logs below and [v3.1 upgrade guide](https://github.com/coreos/etcd/blob/master/Documentation/upgrades/upgrade_3_1.md).**
|
||||||
|
|
||||||
### Added
|
### etcd server
|
||||||
|
|
||||||
- Add `/etc/nsswitch.conf` file to alpine-based Docker image.
|
|
||||||
|
|
||||||
### Fixed
|
|
||||||
|
|
||||||
- Fix raft memory leak issue.
|
- Fix raft memory leak issue.
|
||||||
- Fix Windows file path issues.
|
- Fix Windows file path issues.
|
||||||
|
|
||||||
|
### Other
|
||||||
|
|
||||||
|
- Add `/etc/nsswitch.conf` file to alpine-based Docker image.
|
||||||
|
|
||||||
### Go
|
### Go
|
||||||
|
|
||||||
- Compile with [*Go 1.7.5*](https://golang.org/doc/devel/release.html#go1.7).
|
- Compile with [*Go 1.7.5*](https://golang.org/doc/devel/release.html#go1.7).
|
||||||
@ -172,11 +184,15 @@ See [code changes](https://github.com/coreos/etcd/compare/v3.1.3...v3.1.4) and [
|
|||||||
|
|
||||||
See [code changes](https://github.com/coreos/etcd/compare/v3.1.2...v3.1.3) and [v3.1 upgrade guide](https://github.com/coreos/etcd/blob/master/Documentation/upgrades/upgrade_3_1.md) for any breaking changes. **Again, before running upgrades from any previous release, please make sure to read change logs below and [v3.1 upgrade guide](https://github.com/coreos/etcd/blob/master/Documentation/upgrades/upgrade_3_1.md).**
|
See [code changes](https://github.com/coreos/etcd/compare/v3.1.2...v3.1.3) and [v3.1 upgrade guide](https://github.com/coreos/etcd/blob/master/Documentation/upgrades/upgrade_3_1.md) for any breaking changes. **Again, before running upgrades from any previous release, please make sure to read change logs below and [v3.1 upgrade guide](https://github.com/coreos/etcd/blob/master/Documentation/upgrades/upgrade_3_1.md).**
|
||||||
|
|
||||||
### Fixed
|
### etcd gateway
|
||||||
|
|
||||||
- Fix `etcd gateway` schema handling in DNS discovery.
|
- Fix `etcd gateway` schema handling in DNS discovery.
|
||||||
- Fix sd_notify behaviors in `gateway`, `grpc-proxy`.
|
- Fix sd_notify behaviors in `gateway`, `grpc-proxy`.
|
||||||
|
|
||||||
|
### gRPC Proxy
|
||||||
|
|
||||||
|
- Fix sd_notify behaviors in `gateway`, `grpc-proxy`.
|
||||||
|
|
||||||
### Other
|
### Other
|
||||||
|
|
||||||
- Use machine default host when advertise URLs are default values(`localhost:2379,2380`) AND if listen URL is `0.0.0.0`.
|
- Use machine default host when advertise URLs are default values(`localhost:2379,2380`) AND if listen URL is `0.0.0.0`.
|
||||||
@ -190,7 +206,7 @@ See [code changes](https://github.com/coreos/etcd/compare/v3.1.2...v3.1.3) and [
|
|||||||
|
|
||||||
See [code changes](https://github.com/coreos/etcd/compare/v3.1.1...v3.1.2) and [v3.1 upgrade guide](https://github.com/coreos/etcd/blob/master/Documentation/upgrades/upgrade_3_1.md) for any breaking changes. **Again, before running upgrades from any previous release, please make sure to read change logs below and [v3.1 upgrade guide](https://github.com/coreos/etcd/blob/master/Documentation/upgrades/upgrade_3_1.md).**
|
See [code changes](https://github.com/coreos/etcd/compare/v3.1.1...v3.1.2) and [v3.1 upgrade guide](https://github.com/coreos/etcd/blob/master/Documentation/upgrades/upgrade_3_1.md) for any breaking changes. **Again, before running upgrades from any previous release, please make sure to read change logs below and [v3.1 upgrade guide](https://github.com/coreos/etcd/blob/master/Documentation/upgrades/upgrade_3_1.md).**
|
||||||
|
|
||||||
### Fixed
|
### etcd gateway
|
||||||
|
|
||||||
- Fix `etcd gateway` with multiple endpoints.
|
- Fix `etcd gateway` with multiple endpoints.
|
||||||
|
|
||||||
@ -241,30 +257,13 @@ See [security doc](https://github.com/coreos/etcd/blob/master/Documentation/op-g
|
|||||||
- `TLSConfig.ServerName` is ignored with user-provided certificates for backwards compatibility; to be deprecated.
|
- `TLSConfig.ServerName` is ignored with user-provided certificates for backwards compatibility; to be deprecated.
|
||||||
- For example, `etcd --discovery-srv=example.com` will only authenticate peers/clients when the provided certs have root domain `example.com` as an entry in Subject Alternative Name (SAN) field.
|
- For example, `etcd --discovery-srv=example.com` will only authenticate peers/clients when the provided certs have root domain `example.com` as an entry in Subject Alternative Name (SAN) field.
|
||||||
|
|
||||||
### Added
|
### etcd server
|
||||||
|
|
||||||
- Automatic leadership transfer when leader steps down.
|
- Automatic leadership transfer when leader steps down.
|
||||||
- etcd flags
|
- etcd flags
|
||||||
- `--strict-reconfig-check` flag is set by default.
|
- `--strict-reconfig-check` flag is set by default.
|
||||||
- Add `--log-output` flag.
|
- Add `--log-output` flag.
|
||||||
- Add `--metrics` flag.
|
- Add `--metrics` flag.
|
||||||
- v3 client
|
|
||||||
- Add `SetEndpoints` method; update endpoints at runtime.
|
|
||||||
- Add `Sync` method; auto-update endpoints at runtime.
|
|
||||||
- Add `Lease TimeToLive` API; fetch lease information.
|
|
||||||
- replace Config.Logger field with global logger.
|
|
||||||
- Get API responses are sorted in ascending order by default.
|
|
||||||
- v3 etcdctl
|
|
||||||
- Add `lease timetolive` command.
|
|
||||||
- Add `--print-value-only` flag to get command.
|
|
||||||
- Add `--dest-prefix` flag to make-mirror command.
|
|
||||||
- `get` command responses are sorted in ascending order by default.
|
|
||||||
- `recipes` now conform to sessions defined in `clientv3/concurrency`.
|
|
||||||
- ACI has symlinks to `/usr/local/bin/etcd*`.
|
|
||||||
- Experimental gRPC proxy feature.
|
|
||||||
|
|
||||||
### Other
|
|
||||||
|
|
||||||
- etcd uses default route IP if advertise URL is not given.
|
- etcd uses default route IP if advertise URL is not given.
|
||||||
- Cluster rejects removing members if quorum will be lost.
|
- Cluster rejects removing members if quorum will be lost.
|
||||||
- Discovery now has upper limit for waiting on retries.
|
- Discovery now has upper limit for waiting on retries.
|
||||||
@ -277,6 +276,30 @@ See [security doc](https://github.com/coreos/etcd/blob/master/Documentation/op-g
|
|||||||
- If compaction succeeds or requested revision has already been compacted, it resets period timer and starts over with new historical revision records (e.g. restart revision collect and compact for the next 10-hour period).
|
- If compaction succeeds or requested revision has already been compacted, it resets period timer and starts over with new historical revision records (e.g. restart revision collect and compact for the next 10-hour period).
|
||||||
- If compaction fails, it retries in 5 minutes.
|
- If compaction fails, it retries in 5 minutes.
|
||||||
|
|
||||||
|
### client v3
|
||||||
|
|
||||||
|
- Add `SetEndpoints` method; update endpoints at runtime.
|
||||||
|
- Add `Sync` method; auto-update endpoints at runtime.
|
||||||
|
- Add `Lease TimeToLive` API; fetch lease information.
|
||||||
|
- replace Config.Logger field with global logger.
|
||||||
|
- Get API responses are sorted in ascending order by default.
|
||||||
|
|
||||||
|
### etcdctl v3
|
||||||
|
|
||||||
|
- Add `lease timetolive` command.
|
||||||
|
- Add `--print-value-only` flag to get command.
|
||||||
|
- Add `--dest-prefix` flag to make-mirror command.
|
||||||
|
- `get` command responses are sorted in ascending order by default.
|
||||||
|
|
||||||
|
### gRPC Proxy
|
||||||
|
|
||||||
|
- Experimental gRPC proxy feature.
|
||||||
|
|
||||||
|
### Other
|
||||||
|
|
||||||
|
- `recipes` now conform to sessions defined in `clientv3/concurrency`.
|
||||||
|
- ACI has symlinks to `/usr/local/bin/etcd*`.
|
||||||
|
|
||||||
### Go
|
### Go
|
||||||
|
|
||||||
- Compile with [*Go 1.7.4*](https://golang.org/doc/devel/release.html#go1.7).
|
- Compile with [*Go 1.7.4*](https://golang.org/doc/devel/release.html#go1.7).
|
||||||
|
@ -3,6 +3,21 @@
|
|||||||
Previous change logs can be found at [CHANGELOG-3.1](https://github.com/coreos/etcd/blob/master/CHANGELOG-3.1.md).
|
Previous change logs can be found at [CHANGELOG-3.1](https://github.com/coreos/etcd/blob/master/CHANGELOG-3.1.md).
|
||||||
|
|
||||||
|
|
||||||
|
## [v3.2.20](https://github.com/coreos/etcd/releases/tag/v3.2.20) (TBD 2018-05)
|
||||||
|
|
||||||
|
See [code changes](https://github.com/coreos/etcd/compare/v3.2.19...v3.2.20) and [v3.2 upgrade guide](https://github.com/coreos/etcd/blob/master/Documentation/upgrades/upgrade_3_2.md) for any breaking changes. **Again, before running upgrades from any previous release, please make sure to read change logs below and [v3.2 upgrade guide](https://github.com/coreos/etcd/blob/master/Documentation/upgrades/upgrade_3_2.md).**
|
||||||
|
|
||||||
|
### etcd server
|
||||||
|
|
||||||
|
- Purge old [`*.snap.db` snapshot files](https://github.com/coreos/etcd/pull/7967).
|
||||||
|
- Previously, etcd did not respect `--max-snapshots` flag to purge old `*.snap.db` files.
|
||||||
|
- Now, etcd purges old `*.snap.db` files to keep maximum `--max-snapshots` number of files on disk.
|
||||||
|
|
||||||
|
### Go
|
||||||
|
|
||||||
|
- Compile with [*Go 1.8.7*](https://golang.org/doc/devel/release.html#go1.8).
|
||||||
|
|
||||||
|
|
||||||
## [v3.2.19](https://github.com/coreos/etcd/releases/tag/v3.2.19) (2018-04-24)
|
## [v3.2.19](https://github.com/coreos/etcd/releases/tag/v3.2.19) (2018-04-24)
|
||||||
|
|
||||||
See [code changes](https://github.com/coreos/etcd/compare/v3.2.18...v3.2.19) and [v3.2 upgrade guide](https://github.com/coreos/etcd/blob/master/Documentation/upgrades/upgrade_3_2.md) for any breaking changes. **Again, before running upgrades from any previous release, please make sure to read change logs below and [v3.2 upgrade guide](https://github.com/coreos/etcd/blob/master/Documentation/upgrades/upgrade_3_2.md).**
|
See [code changes](https://github.com/coreos/etcd/compare/v3.2.18...v3.2.19) and [v3.2 upgrade guide](https://github.com/coreos/etcd/blob/master/Documentation/upgrades/upgrade_3_2.md) for any breaking changes. **Again, before running upgrades from any previous release, please make sure to read change logs below and [v3.2 upgrade guide](https://github.com/coreos/etcd/blob/master/Documentation/upgrades/upgrade_3_2.md).**
|
||||||
@ -20,7 +35,7 @@ See [code changes](https://github.com/coreos/etcd/compare/v3.2.18...v3.2.19) and
|
|||||||
- However, a certificate whose SAN field does [not include any domain names but only IP addresses](https://github.com/coreos/etcd/issues/9541) would request `*tls.ClientHelloInfo` with an empty `ServerName` field, thus failing to trigger the TLS reload on initial TLS handshake; this becomes a problem when expired certificates need to be replaced online.
|
- However, a certificate whose SAN field does [not include any domain names but only IP addresses](https://github.com/coreos/etcd/issues/9541) would request `*tls.ClientHelloInfo` with an empty `ServerName` field, thus failing to trigger the TLS reload on initial TLS handshake; this becomes a problem when expired certificates need to be replaced online.
|
||||||
- Now, `(*tls.Config).Certificates` is created empty on initial TLS client handshake, first to trigger `(*tls.Config).GetCertificate`, and then to populate rest of the certificates on every new TLS connection, even when client SNI is empty (e.g. cert only includes IPs).
|
- Now, `(*tls.Config).Certificates` is created empty on initial TLS client handshake, first to trigger `(*tls.Config).GetCertificate`, and then to populate rest of the certificates on every new TLS connection, even when client SNI is empty (e.g. cert only includes IPs).
|
||||||
|
|
||||||
### `etcd`
|
### etcd server
|
||||||
|
|
||||||
- Add [`--initial-election-tick-advance`](https://github.com/coreos/etcd/pull/9591) flag to configure initial election tick fast-forward.
|
- Add [`--initial-election-tick-advance`](https://github.com/coreos/etcd/pull/9591) flag to configure initial election tick fast-forward.
|
||||||
- By default, `--initial-election-tick-advance=true`, then local member fast-forwards election ticks to speed up "initial" leader election trigger.
|
- By default, `--initial-election-tick-advance=true`, then local member fast-forwards election ticks to speed up "initial" leader election trigger.
|
||||||
@ -60,11 +75,7 @@ See [code changes](https://github.com/coreos/etcd/compare/v3.2.17...v3.2.18) and
|
|||||||
|
|
||||||
See [code changes](https://github.com/coreos/etcd/compare/v3.2.16...v3.2.17) and [v3.2 upgrade guide](https://github.com/coreos/etcd/blob/master/Documentation/upgrades/upgrade_3_2.md) for any breaking changes. **Again, before running upgrades from any previous release, please make sure to read change logs below and [v3.2 upgrade guide](https://github.com/coreos/etcd/blob/master/Documentation/upgrades/upgrade_3_2.md).**
|
See [code changes](https://github.com/coreos/etcd/compare/v3.2.16...v3.2.17) and [v3.2 upgrade guide](https://github.com/coreos/etcd/blob/master/Documentation/upgrades/upgrade_3_2.md) for any breaking changes. **Again, before running upgrades from any previous release, please make sure to read change logs below and [v3.2 upgrade guide](https://github.com/coreos/etcd/blob/master/Documentation/upgrades/upgrade_3_2.md).**
|
||||||
|
|
||||||
### Fixed: v2
|
### etcd server
|
||||||
|
|
||||||
- Fix [v2 proxy leaky HTTP requests](https://github.com/coreos/etcd/pull/9336).
|
|
||||||
|
|
||||||
### Fixed: v3
|
|
||||||
|
|
||||||
- Fix [server panic on invalid Election Proclaim/Resign HTTP(S) requests](https://github.com/coreos/etcd/pull/9379).
|
- Fix [server panic on invalid Election Proclaim/Resign HTTP(S) requests](https://github.com/coreos/etcd/pull/9379).
|
||||||
- Previously, wrong-formatted HTTP requests to Election API could trigger panic in etcd server.
|
- Previously, wrong-formatted HTTP requests to Election API could trigger panic in etcd server.
|
||||||
@ -76,6 +87,10 @@ See [code changes](https://github.com/coreos/etcd/compare/v3.2.16...v3.2.17) and
|
|||||||
- Again, etcd `Lease` is meant for short-periodic keepalives or sessions, in the range of seconds or minutes. Not for hours or days!
|
- Again, etcd `Lease` is meant for short-periodic keepalives or sessions, in the range of seconds or minutes. Not for hours or days!
|
||||||
- Enable etcd server [`raft.Config.CheckQuorum` when starting with `ForceNewCluster`](https://github.com/coreos/etcd/pull/9347).
|
- Enable etcd server [`raft.Config.CheckQuorum` when starting with `ForceNewCluster`](https://github.com/coreos/etcd/pull/9347).
|
||||||
|
|
||||||
|
### Proxy v2
|
||||||
|
|
||||||
|
- Fix [v2 proxy leaky HTTP requests](https://github.com/coreos/etcd/pull/9336).
|
||||||
|
|
||||||
### Go
|
### Go
|
||||||
|
|
||||||
- Compile with [*Go 1.8.7*](https://golang.org/doc/devel/release.html#go1.8).
|
- Compile with [*Go 1.8.7*](https://golang.org/doc/devel/release.html#go1.8).
|
||||||
@ -85,7 +100,7 @@ See [code changes](https://github.com/coreos/etcd/compare/v3.2.16...v3.2.17) and
|
|||||||
|
|
||||||
See [code changes](https://github.com/coreos/etcd/compare/v3.2.15...v3.2.16) and [v3.2 upgrade guide](https://github.com/coreos/etcd/blob/master/Documentation/upgrades/upgrade_3_2.md) for any breaking changes. **Again, before running upgrades from any previous release, please make sure to read change logs below and [v3.2 upgrade guide](https://github.com/coreos/etcd/blob/master/Documentation/upgrades/upgrade_3_2.md).**
|
See [code changes](https://github.com/coreos/etcd/compare/v3.2.15...v3.2.16) and [v3.2 upgrade guide](https://github.com/coreos/etcd/blob/master/Documentation/upgrades/upgrade_3_2.md) for any breaking changes. **Again, before running upgrades from any previous release, please make sure to read change logs below and [v3.2 upgrade guide](https://github.com/coreos/etcd/blob/master/Documentation/upgrades/upgrade_3_2.md).**
|
||||||
|
|
||||||
### Fixed: v3
|
### etcd server
|
||||||
|
|
||||||
- Fix [`mvcc` "unsynced" watcher restore operation](https://github.com/coreos/etcd/pull/9297).
|
- Fix [`mvcc` "unsynced" watcher restore operation](https://github.com/coreos/etcd/pull/9297).
|
||||||
- "unsynced" watcher is watcher that needs to be in sync with events that have happened.
|
- "unsynced" watcher is watcher that needs to be in sync with events that have happened.
|
||||||
@ -102,7 +117,7 @@ See [code changes](https://github.com/coreos/etcd/compare/v3.2.15...v3.2.16) and
|
|||||||
|
|
||||||
See [code changes](https://github.com/coreos/etcd/compare/v3.2.14...v3.2.15) and [v3.2 upgrade guide](https://github.com/coreos/etcd/blob/master/Documentation/upgrades/upgrade_3_2.md) for any breaking changes. **Again, before running upgrades from any previous release, please make sure to read change logs below and [v3.2 upgrade guide](https://github.com/coreos/etcd/blob/master/Documentation/upgrades/upgrade_3_2.md).**
|
See [code changes](https://github.com/coreos/etcd/compare/v3.2.14...v3.2.15) and [v3.2 upgrade guide](https://github.com/coreos/etcd/blob/master/Documentation/upgrades/upgrade_3_2.md) for any breaking changes. **Again, before running upgrades from any previous release, please make sure to read change logs below and [v3.2 upgrade guide](https://github.com/coreos/etcd/blob/master/Documentation/upgrades/upgrade_3_2.md).**
|
||||||
|
|
||||||
### Fixed: v3
|
### etcd server
|
||||||
|
|
||||||
- Prevent [server panic from member update/add](https://github.com/coreos/etcd/pull/9174) with [wrong scheme URLs](https://github.com/coreos/etcd/issues/9173).
|
- Prevent [server panic from member update/add](https://github.com/coreos/etcd/pull/9174) with [wrong scheme URLs](https://github.com/coreos/etcd/issues/9173).
|
||||||
- Log [user context cancel errors on stream APIs in debug level with TLS](https://github.com/coreos/etcd/pull/9178).
|
- Log [user context cancel errors on stream APIs in debug level with TLS](https://github.com/coreos/etcd/pull/9178).
|
||||||
@ -120,7 +135,7 @@ See [code changes](https://github.com/coreos/etcd/compare/v3.2.13...v3.2.14) and
|
|||||||
|
|
||||||
- Log [user context cancel errors on stream APIs in debug level](https://github.com/coreos/etcd/pull/9105).
|
- Log [user context cancel errors on stream APIs in debug level](https://github.com/coreos/etcd/pull/9105).
|
||||||
|
|
||||||
### Fixed: v3
|
### etcd server
|
||||||
|
|
||||||
- Fix [`mvcc/backend.defragdb` nil-pointer dereference on create bucket failure](https://github.com/coreos/etcd/pull/9119).
|
- Fix [`mvcc/backend.defragdb` nil-pointer dereference on create bucket failure](https://github.com/coreos/etcd/pull/9119).
|
||||||
|
|
||||||
@ -133,7 +148,7 @@ See [code changes](https://github.com/coreos/etcd/compare/v3.2.13...v3.2.14) and
|
|||||||
|
|
||||||
See [code changes](https://github.com/coreos/etcd/compare/v3.2.12...v3.2.13) and [v3.2 upgrade guide](https://github.com/coreos/etcd/blob/master/Documentation/upgrades/upgrade_3_2.md) for any breaking changes. **Again, before running upgrades from any previous release, please make sure to read change logs below and [v3.2 upgrade guide](https://github.com/coreos/etcd/blob/master/Documentation/upgrades/upgrade_3_2.md).**
|
See [code changes](https://github.com/coreos/etcd/compare/v3.2.12...v3.2.13) and [v3.2 upgrade guide](https://github.com/coreos/etcd/blob/master/Documentation/upgrades/upgrade_3_2.md) for any breaking changes. **Again, before running upgrades from any previous release, please make sure to read change logs below and [v3.2 upgrade guide](https://github.com/coreos/etcd/blob/master/Documentation/upgrades/upgrade_3_2.md).**
|
||||||
|
|
||||||
### Fixed: v3
|
### etcd server
|
||||||
|
|
||||||
- Remove [verbose error messages on stream cancel and gRPC info-level logs](https://github.com/coreos/etcd/pull/9080) in server-side.
|
- Remove [verbose error messages on stream cancel and gRPC info-level logs](https://github.com/coreos/etcd/pull/9080) in server-side.
|
||||||
- Fix [gRPC server panic on `GracefulStop` TLS-enabled server](https://github.com/coreos/etcd/pull/8987).
|
- Fix [gRPC server panic on `GracefulStop` TLS-enabled server](https://github.com/coreos/etcd/pull/8987).
|
||||||
@ -152,11 +167,11 @@ See [code changes](https://github.com/coreos/etcd/compare/v3.2.11...v3.2.12) and
|
|||||||
- Upgrade [`google.golang.org/grpc`](https://github.com/grpc/grpc-go/releases/tag) from [**`v1.7.4`**](https://github.com/grpc/grpc-go/releases/tag/v1.7.4) to [**`v1.7.5`**](https://github.com/grpc/grpc-go/releases/tag/v1.7.5).
|
- Upgrade [`google.golang.org/grpc`](https://github.com/grpc/grpc-go/releases/tag) from [**`v1.7.4`**](https://github.com/grpc/grpc-go/releases/tag/v1.7.4) to [**`v1.7.5`**](https://github.com/grpc/grpc-go/releases/tag/v1.7.5).
|
||||||
- Upgrade [`github.com/grpc-ecosystem/grpc-gateway`](https://github.com/grpc-ecosystem/grpc-gateway/releases) from [**`v1.3`**](https://github.com/grpc-ecosystem/grpc-gateway/releases/tag/v1.3) to [**`v1.3.0`**](https://github.com/grpc-ecosystem/grpc-gateway/releases/tag/v1.3.0).
|
- Upgrade [`github.com/grpc-ecosystem/grpc-gateway`](https://github.com/grpc-ecosystem/grpc-gateway/releases) from [**`v1.3`**](https://github.com/grpc-ecosystem/grpc-gateway/releases/tag/v1.3) to [**`v1.3.0`**](https://github.com/grpc-ecosystem/grpc-gateway/releases/tag/v1.3.0).
|
||||||
|
|
||||||
### Fixed: v3
|
### etcd server
|
||||||
|
|
||||||
- Fix [error message of `Revision` compactor](https://github.com/coreos/etcd/pull/8999) in server-side.
|
- Fix [error message of `Revision` compactor](https://github.com/coreos/etcd/pull/8999) in server-side.
|
||||||
|
|
||||||
### `clientv3`
|
### client v3
|
||||||
|
|
||||||
- Add [`MaxCallSendMsgSize` and `MaxCallRecvMsgSize`](https://github.com/coreos/etcd/pull/9047) fields to [`clientv3.Config`](https://godoc.org/github.com/coreos/etcd/clientv3#Config).
|
- Add [`MaxCallSendMsgSize` and `MaxCallRecvMsgSize`](https://github.com/coreos/etcd/pull/9047) fields to [`clientv3.Config`](https://godoc.org/github.com/coreos/etcd/clientv3#Config).
|
||||||
- Fix [exceeded response size limit error in client-side](https://github.com/coreos/etcd/issues/9043).
|
- Fix [exceeded response size limit error in client-side](https://github.com/coreos/etcd/issues/9043).
|
||||||
@ -184,7 +199,7 @@ See [security doc](https://github.com/coreos/etcd/blob/master/Documentation/op-g
|
|||||||
|
|
||||||
- Log [more details on TLS handshake failures](https://github.com/coreos/etcd/pull/8952/files).
|
- Log [more details on TLS handshake failures](https://github.com/coreos/etcd/pull/8952/files).
|
||||||
|
|
||||||
### Fixed: `clientv3`
|
### client v3
|
||||||
|
|
||||||
- Fix racey grpc-go's server handler transport `WriteStatus` call to prevent [TLS-enabled etcd server crash](https://github.com/coreos/etcd/issues/8904).
|
- Fix racey grpc-go's server handler transport `WriteStatus` call to prevent [TLS-enabled etcd server crash](https://github.com/coreos/etcd/issues/8904).
|
||||||
- Add [gRPC RPC failure warnings](https://github.com/coreos/etcd/pull/8939) to help debug such issues in the future.
|
- Add [gRPC RPC failure warnings](https://github.com/coreos/etcd/pull/8939) to help debug such issues in the future.
|
||||||
@ -214,11 +229,11 @@ See [security doc](https://github.com/coreos/etcd/blob/master/Documentation/op-g
|
|||||||
- Revert [discovery SRV auth `ServerName` with `*.{ROOT_DOMAIN}`](https://github.com/coreos/etcd/pull/8651) to support non-wildcard subject alternative names in the certs (see [issue #8445](https://github.com/coreos/etcd/issues/8445) for more contexts).
|
- Revert [discovery SRV auth `ServerName` with `*.{ROOT_DOMAIN}`](https://github.com/coreos/etcd/pull/8651) to support non-wildcard subject alternative names in the certs (see [issue #8445](https://github.com/coreos/etcd/issues/8445) for more contexts).
|
||||||
- For instance, `etcd --discovery-srv=etcd.local` will only authenticate peers/clients when the provided certs have root domain `etcd.local` (**not `*.etcd.local`**) as an entry in Subject Alternative Name (SAN) field.
|
- For instance, `etcd --discovery-srv=etcd.local` will only authenticate peers/clients when the provided certs have root domain `etcd.local` (**not `*.etcd.local`**) as an entry in Subject Alternative Name (SAN) field.
|
||||||
|
|
||||||
### Fixed: v3
|
### etcd server
|
||||||
|
|
||||||
- Replace backend key-value database `boltdb/bolt` with [`coreos/bbolt`](https://github.com/coreos/bbolt/releases) to address [backend database size issue](https://github.com/coreos/etcd/issues/8009).
|
- Replace backend key-value database `boltdb/bolt` with [`coreos/bbolt`](https://github.com/coreos/bbolt/releases) to address [backend database size issue](https://github.com/coreos/etcd/issues/8009).
|
||||||
|
|
||||||
### Fixed: `clientv3`
|
### client v3
|
||||||
|
|
||||||
- Rewrite balancer to handle [network partitions](https://github.com/coreos/etcd/issues/8711).
|
- Rewrite balancer to handle [network partitions](https://github.com/coreos/etcd/issues/8711).
|
||||||
|
|
||||||
@ -248,11 +263,11 @@ See [security doc](https://github.com/coreos/etcd/blob/master/Documentation/op-g
|
|||||||
|
|
||||||
See [code changes](https://github.com/coreos/etcd/compare/v3.2.7...v3.2.8) and [v3.2 upgrade guide](https://github.com/coreos/etcd/blob/master/Documentation/upgrades/upgrade_3_2.md) for any breaking changes. **Again, before running upgrades from any previous release, please make sure to read change logs below and [v3.2 upgrade guide](https://github.com/coreos/etcd/blob/master/Documentation/upgrades/upgrade_3_2.md).**
|
See [code changes](https://github.com/coreos/etcd/compare/v3.2.7...v3.2.8) and [v3.2 upgrade guide](https://github.com/coreos/etcd/blob/master/Documentation/upgrades/upgrade_3_2.md) for any breaking changes. **Again, before running upgrades from any previous release, please make sure to read change logs below and [v3.2 upgrade guide](https://github.com/coreos/etcd/blob/master/Documentation/upgrades/upgrade_3_2.md).**
|
||||||
|
|
||||||
### Fixed: v2 `client`
|
### client v2
|
||||||
|
|
||||||
- Fix v2 client failover to next endpoint on mutable operation.
|
- Fix v2 client failover to next endpoint on mutable operation.
|
||||||
|
|
||||||
### Fixed: `grpc-proxy`
|
### gRPC Proxy
|
||||||
|
|
||||||
- Handle [`KeysOnly` flag](https://github.com/coreos/etcd/pull/8552).
|
- Handle [`KeysOnly` flag](https://github.com/coreos/etcd/pull/8552).
|
||||||
|
|
||||||
@ -269,7 +284,7 @@ See [code changes](https://github.com/coreos/etcd/compare/v3.2.6...v3.2.7) and [
|
|||||||
|
|
||||||
- Fix [server-side auth so concurrent auth operations do not return old revision error](https://github.com/coreos/etcd/pull/8306).
|
- Fix [server-side auth so concurrent auth operations do not return old revision error](https://github.com/coreos/etcd/pull/8306).
|
||||||
|
|
||||||
### Fixed: `clientv3`
|
### client v3
|
||||||
|
|
||||||
- Fix [`concurrency/stm` Put with serializable snapshot](https://github.com/coreos/etcd/pull/8439).
|
- Fix [`concurrency/stm` Put with serializable snapshot](https://github.com/coreos/etcd/pull/8439).
|
||||||
- Use store revision from first fetch to resolve write conflicts instead of modified revision.
|
- Use store revision from first fetch to resolve write conflicts instead of modified revision.
|
||||||
@ -283,7 +298,7 @@ See [code changes](https://github.com/coreos/etcd/compare/v3.2.6...v3.2.7) and [
|
|||||||
|
|
||||||
See [code changes](https://github.com/coreos/etcd/compare/v3.2.5...v3.2.6) and [v3.2 upgrade guide](https://github.com/coreos/etcd/blob/master/Documentation/upgrades/upgrade_3_2.md) for any breaking changes. **Again, before running upgrades from any previous release, please make sure to read change logs below and [v3.2 upgrade guide](https://github.com/coreos/etcd/blob/master/Documentation/upgrades/upgrade_3_2.md).**
|
See [code changes](https://github.com/coreos/etcd/compare/v3.2.5...v3.2.6) and [v3.2 upgrade guide](https://github.com/coreos/etcd/blob/master/Documentation/upgrades/upgrade_3_2.md) for any breaking changes. **Again, before running upgrades from any previous release, please make sure to read change logs below and [v3.2 upgrade guide](https://github.com/coreos/etcd/blob/master/Documentation/upgrades/upgrade_3_2.md).**
|
||||||
|
|
||||||
### Fixed: v3
|
### etcd server
|
||||||
|
|
||||||
- Fix watch restore from snapshot.
|
- Fix watch restore from snapshot.
|
||||||
- Fix multiple URLs for `--listen-peer-urls` flag.
|
- Fix multiple URLs for `--listen-peer-urls` flag.
|
||||||
@ -302,7 +317,7 @@ See [code changes](https://github.com/coreos/etcd/compare/v3.2.5...v3.2.6) and [
|
|||||||
|
|
||||||
See [code changes](https://github.com/coreos/etcd/compare/v3.2.4...v3.2.5) and [v3.2 upgrade guide](https://github.com/coreos/etcd/blob/master/Documentation/upgrades/upgrade_3_2.md) for any breaking changes. **Again, before running upgrades from any previous release, please make sure to read change logs below and [v3.2 upgrade guide](https://github.com/coreos/etcd/blob/master/Documentation/upgrades/upgrade_3_2.md).**
|
See [code changes](https://github.com/coreos/etcd/compare/v3.2.4...v3.2.5) and [v3.2 upgrade guide](https://github.com/coreos/etcd/blob/master/Documentation/upgrades/upgrade_3_2.md) for any breaking changes. **Again, before running upgrades from any previous release, please make sure to read change logs below and [v3.2 upgrade guide](https://github.com/coreos/etcd/blob/master/Documentation/upgrades/upgrade_3_2.md).**
|
||||||
|
|
||||||
### v3 `etcdctl`
|
### etcdctl v3
|
||||||
|
|
||||||
- Return non-zero exit code on unhealthy `endpoint health`.
|
- Return non-zero exit code on unhealthy `endpoint health`.
|
||||||
|
|
||||||
@ -316,7 +331,7 @@ See [security doc](https://github.com/coreos/etcd/blob/master/Documentation/op-g
|
|||||||
|
|
||||||
- Fix unreachable `/metrics` endpoint when `--enable-v2=false`.
|
- Fix unreachable `/metrics` endpoint when `--enable-v2=false`.
|
||||||
|
|
||||||
### Fixed: `grpc-proxy`
|
### gRPC Proxy
|
||||||
|
|
||||||
- Handle [`PrevKv` flag](https://github.com/coreos/etcd/pull/8366).
|
- Handle [`PrevKv` flag](https://github.com/coreos/etcd/pull/8366).
|
||||||
|
|
||||||
@ -333,9 +348,12 @@ See [security doc](https://github.com/coreos/etcd/blob/master/Documentation/op-g
|
|||||||
|
|
||||||
See [code changes](https://github.com/coreos/etcd/compare/v3.2.3...v3.2.4) and [v3.2 upgrade guide](https://github.com/coreos/etcd/blob/master/Documentation/upgrades/upgrade_3_2.md) for any breaking changes. **Again, before running upgrades from any previous release, please make sure to read change logs below and [v3.2 upgrade guide](https://github.com/coreos/etcd/blob/master/Documentation/upgrades/upgrade_3_2.md).**
|
See [code changes](https://github.com/coreos/etcd/compare/v3.2.3...v3.2.4) and [v3.2 upgrade guide](https://github.com/coreos/etcd/blob/master/Documentation/upgrades/upgrade_3_2.md) for any breaking changes. **Again, before running upgrades from any previous release, please make sure to read change logs below and [v3.2 upgrade guide](https://github.com/coreos/etcd/blob/master/Documentation/upgrades/upgrade_3_2.md).**
|
||||||
|
|
||||||
### Fixed
|
### etcd server
|
||||||
|
|
||||||
- Do not block on active client stream when stopping server
|
- Do not block on active client stream when stopping server
|
||||||
|
|
||||||
|
### gRPC proxy
|
||||||
|
|
||||||
- Fix gRPC proxy Snapshot RPC error handling
|
- Fix gRPC proxy Snapshot RPC error handling
|
||||||
|
|
||||||
### Go
|
### Go
|
||||||
@ -347,11 +365,11 @@ See [code changes](https://github.com/coreos/etcd/compare/v3.2.3...v3.2.4) and [
|
|||||||
|
|
||||||
See [code changes](https://github.com/coreos/etcd/compare/v3.2.2...v3.2.3) and [v3.2 upgrade guide](https://github.com/coreos/etcd/blob/master/Documentation/upgrades/upgrade_3_2.md) for any breaking changes. **Again, before running upgrades from any previous release, please make sure to read change logs below and [v3.2 upgrade guide](https://github.com/coreos/etcd/blob/master/Documentation/upgrades/upgrade_3_2.md).**
|
See [code changes](https://github.com/coreos/etcd/compare/v3.2.2...v3.2.3) and [v3.2 upgrade guide](https://github.com/coreos/etcd/blob/master/Documentation/upgrades/upgrade_3_2.md) for any breaking changes. **Again, before running upgrades from any previous release, please make sure to read change logs below and [v3.2 upgrade guide](https://github.com/coreos/etcd/blob/master/Documentation/upgrades/upgrade_3_2.md).**
|
||||||
|
|
||||||
### Fixed
|
### client v3
|
||||||
|
|
||||||
- Let clients establish unlimited streams
|
- Let clients establish unlimited streams
|
||||||
|
|
||||||
### Added
|
### Other
|
||||||
|
|
||||||
- Tag docker images with minor versions
|
- Tag docker images with minor versions
|
||||||
- e.g. `docker pull quay.io/coreos/etcd:v3.2` to fetch latest v3.2 versions
|
- e.g. `docker pull quay.io/coreos/etcd:v3.2` to fetch latest v3.2 versions
|
||||||
@ -376,12 +394,12 @@ See [security doc](https://github.com/coreos/etcd/blob/master/Documentation/op-g
|
|||||||
|
|
||||||
- [Server accepts connections if IP matches, without checking DNS entries](https://github.com/coreos/etcd/pull/8223). For instance, if peer cert contains IP addresses and DNS names in Subject Alternative Name (SAN) field, and the remote IP address matches one of those IP addresses, server just accepts connection without further checking the DNS names. For example, peer B's CSR (with `cfssl`) SAN field is `["invalid.domain", "10.138.0.2"]` when peer B's remote IP address is `10.138.0.2` and `invalid.domain` is a invalid host. When peer B tries to join the cluster, peer A successfully authenticates B, since Subject Alternative Name (SAN) field has a valid matching IP address. See [issue#8206](https://github.com/coreos/etcd/issues/8206) for more detail.
|
- [Server accepts connections if IP matches, without checking DNS entries](https://github.com/coreos/etcd/pull/8223). For instance, if peer cert contains IP addresses and DNS names in Subject Alternative Name (SAN) field, and the remote IP address matches one of those IP addresses, server just accepts connection without further checking the DNS names. For example, peer B's CSR (with `cfssl`) SAN field is `["invalid.domain", "10.138.0.2"]` when peer B's remote IP address is `10.138.0.2` and `invalid.domain` is a invalid host. When peer B tries to join the cluster, peer A successfully authenticates B, since Subject Alternative Name (SAN) field has a valid matching IP address. See [issue#8206](https://github.com/coreos/etcd/issues/8206) for more detail.
|
||||||
|
|
||||||
### Fixed: v3
|
### etcd server
|
||||||
|
|
||||||
- Accept connection with matched IP SAN but no DNS match.
|
- Accept connection with matched IP SAN but no DNS match.
|
||||||
- Don't check DNS entries in certs if there's a matching IP.
|
- Don't check DNS entries in certs if there's a matching IP.
|
||||||
|
|
||||||
### Fixed: gRPC gateway
|
### gRPC gateway
|
||||||
|
|
||||||
- Use user-provided listen address to connect to gRPC gateway.
|
- Use user-provided listen address to connect to gRPC gateway.
|
||||||
- `net.Listener` rewrites IPv4 0.0.0.0 to IPv6 [::], breaking IPv6 disabled hosts.
|
- `net.Listener` rewrites IPv4 0.0.0.0 to IPv6 [::], breaking IPv6 disabled hosts.
|
||||||
@ -396,11 +414,11 @@ See [security doc](https://github.com/coreos/etcd/blob/master/Documentation/op-g
|
|||||||
|
|
||||||
See [code changes](https://github.com/coreos/etcd/compare/v3.2.0...v3.2.1) and [v3.2 upgrade guide](https://github.com/coreos/etcd/blob/master/Documentation/upgrades/upgrade_3_2.md) for any breaking changes. **Again, before running upgrades from any previous release, please make sure to read change logs below and [v3.2 upgrade guide](https://github.com/coreos/etcd/blob/master/Documentation/upgrades/upgrade_3_2.md).**
|
See [code changes](https://github.com/coreos/etcd/compare/v3.2.0...v3.2.1) and [v3.2 upgrade guide](https://github.com/coreos/etcd/blob/master/Documentation/upgrades/upgrade_3_2.md) for any breaking changes. **Again, before running upgrades from any previous release, please make sure to read change logs below and [v3.2 upgrade guide](https://github.com/coreos/etcd/blob/master/Documentation/upgrades/upgrade_3_2.md).**
|
||||||
|
|
||||||
### Fixed: v3
|
### etcd server
|
||||||
|
|
||||||
- Fix backend database in-memory index corruption issue on restore (only 3.2.0 is affected).
|
- Fix backend database in-memory index corruption issue on restore (only 3.2.0 is affected).
|
||||||
|
|
||||||
### Fixed: gRPC gateway
|
### gRPC gateway
|
||||||
|
|
||||||
- Fix Txn marshaling.
|
- Fix Txn marshaling.
|
||||||
|
|
||||||
@ -451,17 +469,14 @@ See [security doc](https://github.com/coreos/etcd/blob/master/Documentation/op-g
|
|||||||
- [Server resolves TLS `DNSNames` when checking `SAN`](https://github.com/coreos/etcd/pull/7767). For instance, if peer cert contains only DNS names (no IP addresses) in Subject Alternative Name (SAN) field, server authenticates a peer only when forward-lookups (`dig b.com`) on those DNS names have matching IP with the remote IP address. For example, peer B's CSR (with `cfssl`) SAN field is `["b.com"]` when peer B's remote IP address is `10.138.0.2`. When peer B tries to join the cluster, peer A looks up the incoming host `b.com` to get the list of IP addresses (e.g. `dig b.com`). And rejects B if the list does not contain the IP `10.138.0.2`, with the error `tls: 10.138.0.2 does not match any of DNSNames ["b.com"]`.
|
- [Server resolves TLS `DNSNames` when checking `SAN`](https://github.com/coreos/etcd/pull/7767). For instance, if peer cert contains only DNS names (no IP addresses) in Subject Alternative Name (SAN) field, server authenticates a peer only when forward-lookups (`dig b.com`) on those DNS names have matching IP with the remote IP address. For example, peer B's CSR (with `cfssl`) SAN field is `["b.com"]` when peer B's remote IP address is `10.138.0.2`. When peer B tries to join the cluster, peer A looks up the incoming host `b.com` to get the list of IP addresses (e.g. `dig b.com`). And rejects B if the list does not contain the IP `10.138.0.2`, with the error `tls: 10.138.0.2 does not match any of DNSNames ["b.com"]`.
|
||||||
- Auth support JWT token.
|
- Auth support JWT token.
|
||||||
|
|
||||||
### Added
|
### etcd server
|
||||||
|
|
||||||
- RPCs
|
- RPCs
|
||||||
- Add Election, Lock service.
|
- Add Election, Lock service.
|
||||||
- Native client etcdserver/api/v3client
|
- Native client `etcdserver/api/v3client`
|
||||||
- client "embedded" in the server.
|
- client "embedded" in the server.
|
||||||
- Logging, monitoring
|
- Logging, monitoring
|
||||||
- Server warns large snapshot operations.
|
- Server warns large snapshot operations.
|
||||||
|
|
||||||
### `etcd`
|
|
||||||
|
|
||||||
- Add `--enable-v2` flag to enable v2 API server.
|
- Add `--enable-v2` flag to enable v2 API server.
|
||||||
- `--enable-v2=true` by default.
|
- `--enable-v2=true` by default.
|
||||||
- Add `--auth-token` flag.
|
- Add `--auth-token` flag.
|
||||||
@ -474,31 +489,28 @@ See [security doc](https://github.com/coreos/etcd/blob/master/Documentation/op-g
|
|||||||
- For instance, when hourly writes are 100 and `--auto-compaction-retention=10`, v3.1 compacts revision 1000, 2000, and 3000 for every 10-hour, while v3.2 compacts revision 1000, 1100, and 1200 for every 1-hour.
|
- For instance, when hourly writes are 100 and `--auto-compaction-retention=10`, v3.1 compacts revision 1000, 2000, and 3000 for every 10-hour, while v3.2 compacts revision 1000, 1100, and 1200 for every 1-hour.
|
||||||
- If compaction succeeds or requested revision has already been compacted, it resets period timer and removes used compacted revision from historical revision records (e.g. start next revision collect and compaction from previously collected revisions).
|
- If compaction succeeds or requested revision has already been compacted, it resets period timer and removes used compacted revision from historical revision records (e.g. start next revision collect and compaction from previously collected revisions).
|
||||||
- If compaction fails, it retries in 5 minutes.
|
- If compaction fails, it retries in 5 minutes.
|
||||||
|
- Allow snapshot over 512MB.
|
||||||
|
|
||||||
### `clientv3`
|
### client v3
|
||||||
|
|
||||||
- STM prefetching.
|
- STM prefetching.
|
||||||
- Add namespace feature.
|
- Add namespace feature.
|
||||||
- Add `ErrOldCluster` with server version checking.
|
- Add `ErrOldCluster` with server version checking.
|
||||||
- Translate `WithPrefix()` into `WithFromKey()` for empty key.
|
- Translate `WithPrefix()` into `WithFromKey()` for empty key.
|
||||||
|
|
||||||
### v3 `etcdctl`
|
### etcdctl v3
|
||||||
|
|
||||||
- Add `check perf` command.
|
- Add `check perf` command.
|
||||||
- Add `--from-key` flag to role grant-permission command.
|
- Add `--from-key` flag to role grant-permission command.
|
||||||
- `lock` command takes an optional command to execute.
|
- `lock` command takes an optional command to execute.
|
||||||
|
|
||||||
### Fixed: v2
|
### gRPC Proxy
|
||||||
|
|
||||||
- Allow snapshot over 512MB.
|
|
||||||
|
|
||||||
### `grpc-proxy`
|
|
||||||
|
|
||||||
- Proxy endpoint discovery.
|
- Proxy endpoint discovery.
|
||||||
- Namespaces.
|
- Namespaces.
|
||||||
- Coalesce lease requests.
|
- Coalesce lease requests.
|
||||||
|
|
||||||
### `gateway`
|
### etcd gateway
|
||||||
|
|
||||||
- Support [DNS SRV priority](https://github.com/coreos/etcd/pull/7882) for [smart proxy routing](https://github.com/coreos/etcd/issues/4378).
|
- Support [DNS SRV priority](https://github.com/coreos/etcd/pull/7882) for [smart proxy routing](https://github.com/coreos/etcd/issues/4378).
|
||||||
|
|
||||||
|
@ -7,7 +7,7 @@ Previous change logs can be found at [CHANGELOG-3.2](https://github.com/coreos/e
|
|||||||
|
|
||||||
See [code changes](https://github.com/coreos/etcd/compare/v3.3.4...v3.3.5) and [v3.3 upgrade guide](https://github.com/coreos/etcd/blob/master/Documentation/upgrades/upgrade_3_3.md) for any breaking changes. **Again, before running upgrades from any previous release, please make sure to read change logs below and [v3.3 upgrade guide](https://github.com/coreos/etcd/blob/master/Documentation/upgrades/upgrade_3_3.md).**
|
See [code changes](https://github.com/coreos/etcd/compare/v3.3.4...v3.3.5) and [v3.3 upgrade guide](https://github.com/coreos/etcd/blob/master/Documentation/upgrades/upgrade_3_3.md) for any breaking changes. **Again, before running upgrades from any previous release, please make sure to read change logs below and [v3.3 upgrade guide](https://github.com/coreos/etcd/blob/master/Documentation/upgrades/upgrade_3_3.md).**
|
||||||
|
|
||||||
### Fixed: v3 `etcdctl`
|
### etcdctl v3
|
||||||
|
|
||||||
- Fix [`watch [key] [range_end] -- [exec-command…]`](https://github.com/coreos/etcd/pull/9688) parsing.
|
- Fix [`watch [key] [range_end] -- [exec-command…]`](https://github.com/coreos/etcd/pull/9688) parsing.
|
||||||
- Previously, `ETCDCTL_API=3 ./bin/etcdctl watch foo -- echo watch event received` panicked.
|
- Previously, `ETCDCTL_API=3 ./bin/etcdctl watch foo -- echo watch event received` panicked.
|
||||||
@ -34,7 +34,7 @@ See [code changes](https://github.com/coreos/etcd/compare/v3.3.3...v3.3.4) and [
|
|||||||
- However, a certificate whose SAN field does [not include any domain names but only IP addresses](https://github.com/coreos/etcd/issues/9541) would request `*tls.ClientHelloInfo` with an empty `ServerName` field, thus failing to trigger the TLS reload on initial TLS handshake; this becomes a problem when expired certificates need to be replaced online.
|
- However, a certificate whose SAN field does [not include any domain names but only IP addresses](https://github.com/coreos/etcd/issues/9541) would request `*tls.ClientHelloInfo` with an empty `ServerName` field, thus failing to trigger the TLS reload on initial TLS handshake; this becomes a problem when expired certificates need to be replaced online.
|
||||||
- Now, `(*tls.Config).Certificates` is created empty on initial TLS client handshake, first to trigger `(*tls.Config).GetCertificate`, and then to populate rest of the certificates on every new TLS connection, even when client SNI is empty (e.g. cert only includes IPs).
|
- Now, `(*tls.Config).Certificates` is created empty on initial TLS client handshake, first to trigger `(*tls.Config).GetCertificate`, and then to populate rest of the certificates on every new TLS connection, even when client SNI is empty (e.g. cert only includes IPs).
|
||||||
|
|
||||||
### `etcd`
|
### etcd server
|
||||||
|
|
||||||
- Add [`--initial-election-tick-advance`](https://github.com/coreos/etcd/pull/9591) flag to configure initial election tick fast-forward.
|
- Add [`--initial-election-tick-advance`](https://github.com/coreos/etcd/pull/9591) flag to configure initial election tick fast-forward.
|
||||||
- By default, `--initial-election-tick-advance=true`, then local member fast-forwards election ticks to speed up "initial" leader election trigger.
|
- By default, `--initial-election-tick-advance=true`, then local member fast-forwards election ticks to speed up "initial" leader election trigger.
|
||||||
@ -88,7 +88,7 @@ See [code changes](https://github.com/coreos/etcd/compare/v3.3.2...v3.3.3) and [
|
|||||||
|
|
||||||
See [code changes](https://github.com/coreos/etcd/compare/v3.3.1...v3.3.2) and [v3.3 upgrade guide](https://github.com/coreos/etcd/blob/master/Documentation/upgrades/upgrade_3_3.md) for any breaking changes. **Again, before running upgrades from any previous release, please make sure to read change logs below and [v3.3 upgrade guide](https://github.com/coreos/etcd/blob/master/Documentation/upgrades/upgrade_3_3.md).**
|
See [code changes](https://github.com/coreos/etcd/compare/v3.3.1...v3.3.2) and [v3.3 upgrade guide](https://github.com/coreos/etcd/blob/master/Documentation/upgrades/upgrade_3_3.md) for any breaking changes. **Again, before running upgrades from any previous release, please make sure to read change logs below and [v3.3 upgrade guide](https://github.com/coreos/etcd/blob/master/Documentation/upgrades/upgrade_3_3.md).**
|
||||||
|
|
||||||
### Fixed: v3
|
### etcd server
|
||||||
|
|
||||||
- Fix [server panic on invalid Election Proclaim/Resign HTTP(S) requests](https://github.com/coreos/etcd/pull/9379).
|
- Fix [server panic on invalid Election Proclaim/Resign HTTP(S) requests](https://github.com/coreos/etcd/pull/9379).
|
||||||
- Previously, wrong-formatted HTTP requests to Election API could trigger panic in etcd server.
|
- Previously, wrong-formatted HTTP requests to Election API could trigger panic in etcd server.
|
||||||
@ -103,7 +103,7 @@ See [code changes](https://github.com/coreos/etcd/compare/v3.3.1...v3.3.2) and [
|
|||||||
- Again, etcd `Lease` is meant for short-periodic keepalives or sessions, in the range of seconds or minutes. Not for hours or days!
|
- Again, etcd `Lease` is meant for short-periodic keepalives or sessions, in the range of seconds or minutes. Not for hours or days!
|
||||||
- Enable etcd server [`raft.Config.CheckQuorum` when starting with `ForceNewCluster`](https://github.com/coreos/etcd/pull/9347).
|
- Enable etcd server [`raft.Config.CheckQuorum` when starting with `ForceNewCluster`](https://github.com/coreos/etcd/pull/9347).
|
||||||
|
|
||||||
### Fixed: v2
|
### Proxy v2
|
||||||
|
|
||||||
- Fix [v2 proxy leaky HTTP requests](https://github.com/coreos/etcd/pull/9336).
|
- Fix [v2 proxy leaky HTTP requests](https://github.com/coreos/etcd/pull/9336).
|
||||||
|
|
||||||
@ -121,7 +121,7 @@ See [code changes](https://github.com/coreos/etcd/compare/v3.3.0...v3.3.1) and [
|
|||||||
- Add [warnings on requests taking too long](https://github.com/coreos/etcd/pull/9288).
|
- Add [warnings on requests taking too long](https://github.com/coreos/etcd/pull/9288).
|
||||||
- e.g. `etcdserver: read-only range request "key:\"\\000\" range_end:\"\\000\" " took too long [3.389041388s] to execute`
|
- e.g. `etcdserver: read-only range request "key:\"\\000\" range_end:\"\\000\" " took too long [3.389041388s] to execute`
|
||||||
|
|
||||||
### Fixed: v3
|
### etcd server
|
||||||
|
|
||||||
- Fix [`mvcc` "unsynced" watcher restore operation](https://github.com/coreos/etcd/pull/9281).
|
- Fix [`mvcc` "unsynced" watcher restore operation](https://github.com/coreos/etcd/pull/9281).
|
||||||
- "unsynced" watcher is watcher that needs to be in sync with events that have happened.
|
- "unsynced" watcher is watcher that needs to be in sync with events that have happened.
|
||||||
@ -222,7 +222,7 @@ See [security doc](https://github.com/coreos/etcd/blob/master/Documentation/op-g
|
|||||||
- Provide user's role on [auth permission error](https://github.com/coreos/etcd/pull/8164).
|
- Provide user's role on [auth permission error](https://github.com/coreos/etcd/pull/8164).
|
||||||
- Fix [auth store panic with disabled token](https://github.com/coreos/etcd/pull/8695).
|
- Fix [auth store panic with disabled token](https://github.com/coreos/etcd/pull/8695).
|
||||||
|
|
||||||
### `etcd`
|
### etcd server
|
||||||
|
|
||||||
- Add [`--experimental-initial-corrupt-check`](https://github.com/coreos/etcd/pull/8554) flag to [check cluster database hashes before serving client/peer traffic](https://github.com/coreos/etcd/issues/8313).
|
- Add [`--experimental-initial-corrupt-check`](https://github.com/coreos/etcd/pull/8554) flag to [check cluster database hashes before serving client/peer traffic](https://github.com/coreos/etcd/issues/8313).
|
||||||
- `--experimental-initial-corrupt-check=false` by default.
|
- `--experimental-initial-corrupt-check=false` by default.
|
||||||
@ -278,7 +278,7 @@ See [security doc](https://github.com/coreos/etcd/blob/master/Documentation/op-g
|
|||||||
- Add [lease list](https://github.com/coreos/etcd/pull/8358).
|
- Add [lease list](https://github.com/coreos/etcd/pull/8358).
|
||||||
- Add [hash by revision](https://github.com/coreos/etcd/pull/8263) for [better corruption checking against boltdb](https://github.com/coreos/etcd/issues/8016).
|
- Add [hash by revision](https://github.com/coreos/etcd/pull/8263) for [better corruption checking against boltdb](https://github.com/coreos/etcd/issues/8016).
|
||||||
|
|
||||||
### `clientv3`
|
### client v3
|
||||||
|
|
||||||
- Add [health balancer](https://github.com/coreos/etcd/pull/8545) to fix [watch API hangs](https://github.com/coreos/etcd/issues/7247), improve [endpoint switch under network faults](https://github.com/coreos/etcd/issues/7941).
|
- Add [health balancer](https://github.com/coreos/etcd/pull/8545) to fix [watch API hangs](https://github.com/coreos/etcd/issues/7247), improve [endpoint switch under network faults](https://github.com/coreos/etcd/issues/7941).
|
||||||
- [Refactor balancer](https://github.com/coreos/etcd/pull/8840) and add [client-side keepalive pings](https://github.com/coreos/etcd/pull/8199) to handle [network partitions](https://github.com/coreos/etcd/issues/8711).
|
- [Refactor balancer](https://github.com/coreos/etcd/pull/8840) and add [client-side keepalive pings](https://github.com/coreos/etcd/pull/8199) to handle [network partitions](https://github.com/coreos/etcd/issues/8711).
|
||||||
@ -294,15 +294,12 @@ See [security doc](https://github.com/coreos/etcd/blob/master/Documentation/op-g
|
|||||||
- Add [`HashKV`](https://github.com/coreos/etcd/pull/8351) to `Maintenance`.
|
- Add [`HashKV`](https://github.com/coreos/etcd/pull/8351) to `Maintenance`.
|
||||||
- Add [`Leases`](https://github.com/coreos/etcd/pull/8358) to `Lease`.
|
- Add [`Leases`](https://github.com/coreos/etcd/pull/8358) to `Lease`.
|
||||||
- Add [`clientv3/ordering`](https://github.com/coreos/etcd/pull/8092) for enforce [ordering in serialized requests](https://github.com/coreos/etcd/issues/7623).
|
- Add [`clientv3/ordering`](https://github.com/coreos/etcd/pull/8092) for enforce [ordering in serialized requests](https://github.com/coreos/etcd/issues/7623).
|
||||||
|
|
||||||
### Fixed: `clientv3`
|
|
||||||
|
|
||||||
- Fix ["put at-most-once" violation](https://github.com/coreos/etcd/pull/8335).
|
- Fix ["put at-most-once" violation](https://github.com/coreos/etcd/pull/8335).
|
||||||
- Fix [`WatchResponse.Canceled`](https://github.com/coreos/etcd/pull/8283) on [compacted watch request](https://github.com/coreos/etcd/issues/8231).
|
- Fix [`WatchResponse.Canceled`](https://github.com/coreos/etcd/pull/8283) on [compacted watch request](https://github.com/coreos/etcd/issues/8231).
|
||||||
- Fix [`concurrency/stm` `Put` with serializable snapshot](https://github.com/coreos/etcd/pull/8439).
|
- Fix [`concurrency/stm` `Put` with serializable snapshot](https://github.com/coreos/etcd/pull/8439).
|
||||||
- Use store revision from first fetch to resolve write conflicts instead of modified revision.
|
- Use store revision from first fetch to resolve write conflicts instead of modified revision.
|
||||||
|
|
||||||
### v3 `etcdctl`
|
### etcdctl v3
|
||||||
|
|
||||||
- Add [`--discovery-srv`](https://github.com/coreos/etcd/pull/8462) flag.
|
- Add [`--discovery-srv`](https://github.com/coreos/etcd/pull/8462) flag.
|
||||||
- Add [`--keepalive-time`, `--keepalive-timeout`](https://github.com/coreos/etcd/pull/8663) flags.
|
- Add [`--keepalive-time`, `--keepalive-timeout`](https://github.com/coreos/etcd/pull/8663) flags.
|
||||||
@ -324,15 +321,15 @@ See [security doc](https://github.com/coreos/etcd/blob/master/Documentation/op-g
|
|||||||
- Print [`"del"` instead of `"delete"`](https://github.com/coreos/etcd/pull/8297) in `txn` interactive mode.
|
- Print [`"del"` instead of `"delete"`](https://github.com/coreos/etcd/pull/8297) in `txn` interactive mode.
|
||||||
- Print [`ETCD_INITIAL_ADVERTISE_PEER_URLS` in `member add`](https://github.com/coreos/etcd/pull/8332).
|
- Print [`ETCD_INITIAL_ADVERTISE_PEER_URLS` in `member add`](https://github.com/coreos/etcd/pull/8332).
|
||||||
|
|
||||||
### Fixed: v3 `etcdctl`
|
### etcdctl v3
|
||||||
|
|
||||||
- Handle [empty key permission](https://github.com/coreos/etcd/pull/8514) in `etcdctl`.
|
- Handle [empty key permission](https://github.com/coreos/etcd/pull/8514) in `etcdctl`.
|
||||||
|
|
||||||
### v2 `etcdctl`
|
### etcdctl v2
|
||||||
|
|
||||||
- Add [`backup --with-v3`](https://github.com/coreos/etcd/pull/8479) flag.
|
- Add [`backup --with-v3`](https://github.com/coreos/etcd/pull/8479) flag.
|
||||||
|
|
||||||
### `grpc-proxy`
|
### gRPC Proxy
|
||||||
|
|
||||||
- Add [`grpc-proxy start --experimental-leasing-prefix`](https://github.com/coreos/etcd/pull/8341) flag.
|
- Add [`grpc-proxy start --experimental-leasing-prefix`](https://github.com/coreos/etcd/pull/8341) flag.
|
||||||
- For disconnected linearized reads.
|
- For disconnected linearized reads.
|
||||||
@ -346,9 +343,6 @@ See [security doc](https://github.com/coreos/etcd/blob/master/Documentation/op-g
|
|||||||
- Add [`grpc-proxy start --debug`](https://github.com/coreos/etcd/pull/8994) flag.
|
- Add [`grpc-proxy start --debug`](https://github.com/coreos/etcd/pull/8994) flag.
|
||||||
- Add [`grpc-proxy start --max-send-bytes`](https://github.com/coreos/etcd/pull/9250) flag to [configure maximum client request size](https://github.com/coreos/etcd/issues/7923).
|
- Add [`grpc-proxy start --max-send-bytes`](https://github.com/coreos/etcd/pull/9250) flag to [configure maximum client request size](https://github.com/coreos/etcd/issues/7923).
|
||||||
- Add [`grpc-proxy start --max-recv-bytes`](https://github.com/coreos/etcd/pull/9250) flag to [configure maximum client request size](https://github.com/coreos/etcd/issues/7923).
|
- Add [`grpc-proxy start --max-recv-bytes`](https://github.com/coreos/etcd/pull/9250) flag to [configure maximum client request size](https://github.com/coreos/etcd/issues/7923).
|
||||||
|
|
||||||
### Fixed: `grpc-proxy`
|
|
||||||
|
|
||||||
- Fix [Snapshot API error handling](https://github.com/coreos/etcd/commit/dbd16d52fbf81e5fd806d21ff5e9148d5bf203ab).
|
- Fix [Snapshot API error handling](https://github.com/coreos/etcd/commit/dbd16d52fbf81e5fd806d21ff5e9148d5bf203ab).
|
||||||
- Fix [KV API `PrevKv` flag handling](https://github.com/coreos/etcd/pull/8366).
|
- Fix [KV API `PrevKv` flag handling](https://github.com/coreos/etcd/pull/8366).
|
||||||
- Fix [KV API `KeysOnly` flag handling](https://github.com/coreos/etcd/pull/8552).
|
- Fix [KV API `KeysOnly` flag handling](https://github.com/coreos/etcd/pull/8552).
|
||||||
@ -363,7 +357,7 @@ See [security doc](https://github.com/coreos/etcd/blob/master/Documentation/op-g
|
|||||||
- Fix [`Watch` API with gRPC gateway](https://github.com/coreos/etcd/issues/8237).
|
- Fix [`Watch` API with gRPC gateway](https://github.com/coreos/etcd/issues/8237).
|
||||||
- Upgrade gRPC gateway to [v1.3.0](https://github.com/coreos/etcd/issues/8838).
|
- Upgrade gRPC gateway to [v1.3.0](https://github.com/coreos/etcd/issues/8838).
|
||||||
|
|
||||||
### Fixed: v3
|
### etcd server
|
||||||
|
|
||||||
- Fix [backend database in-memory index corruption](https://github.com/coreos/etcd/pull/8127) issue on restore (only 3.2.0 is affected).
|
- Fix [backend database in-memory index corruption](https://github.com/coreos/etcd/pull/8127) issue on restore (only 3.2.0 is affected).
|
||||||
- Fix [watch restore from snapshot](https://github.com/coreos/etcd/pull/8427).
|
- Fix [watch restore from snapshot](https://github.com/coreos/etcd/pull/8427).
|
||||||
@ -378,11 +372,11 @@ See [security doc](https://github.com/coreos/etcd/blob/master/Documentation/op-g
|
|||||||
- Fix server-side auth so [concurrent auth operations do not return old revision error](https://github.com/coreos/etcd/pull/8442).
|
- Fix server-side auth so [concurrent auth operations do not return old revision error](https://github.com/coreos/etcd/pull/8442).
|
||||||
- Handle [WAL renaming failure on Windows](https://github.com/coreos/etcd/pull/8286).
|
- Handle [WAL renaming failure on Windows](https://github.com/coreos/etcd/pull/8286).
|
||||||
- Upgrade [`coreos/go-systemd`](https://github.com/coreos/go-systemd/releases) to `v15` (see https://github.com/coreos/go-systemd/releases/tag/v15).
|
- Upgrade [`coreos/go-systemd`](https://github.com/coreos/go-systemd/releases) to `v15` (see https://github.com/coreos/go-systemd/releases/tag/v15).
|
||||||
|
- [Put back `/v2/machines`](https://github.com/coreos/etcd/pull/8062) endpoint for python-etcd wrapper.
|
||||||
|
|
||||||
### Fixed: v2
|
### client v2
|
||||||
|
|
||||||
- [Fail-over v2 client](https://github.com/coreos/etcd/pull/8519) to next endpoint on [oneshot failure](https://github.com/coreos/etcd/issues/8515).
|
- [Fail-over v2 client](https://github.com/coreos/etcd/pull/8519) to next endpoint on [oneshot failure](https://github.com/coreos/etcd/issues/8515).
|
||||||
- [Put back `/v2/machines`](https://github.com/coreos/etcd/pull/8062) endpoint for python-etcd wrapper.
|
|
||||||
|
|
||||||
### Package `raft`
|
### Package `raft`
|
||||||
|
|
||||||
|
@ -3,7 +3,7 @@
|
|||||||
Previous change logs can be found at [CHANGELOG-3.3](https://github.com/coreos/etcd/blob/master/CHANGELOG-3.3.md).
|
Previous change logs can be found at [CHANGELOG-3.3](https://github.com/coreos/etcd/blob/master/CHANGELOG-3.3.md).
|
||||||
|
|
||||||
|
|
||||||
## v3.4.0 (TBD 2018-07-01)
|
## v3.4.0 (TBD 2018-07)
|
||||||
|
|
||||||
See [code changes](https://github.com/coreos/etcd/compare/v3.3.0...v3.4.0) and [v3.4 upgrade guide](https://github.com/coreos/etcd/blob/master/Documentation/upgrades/upgrade_3_4.md) for any breaking changes. **Again, before running upgrades from any previous release, please make sure to read change logs below and [v3.4 upgrade guide](https://github.com/coreos/etcd/blob/master/Documentation/upgrades/upgrade_3_4.md).**
|
See [code changes](https://github.com/coreos/etcd/compare/v3.3.0...v3.4.0) and [v3.4 upgrade guide](https://github.com/coreos/etcd/blob/master/Documentation/upgrades/upgrade_3_4.md) for any breaking changes. **Again, before running upgrades from any previous release, please make sure to read change logs below and [v3.4 upgrade guide](https://github.com/coreos/etcd/blob/master/Documentation/upgrades/upgrade_3_4.md).**
|
||||||
|
|
||||||
@ -131,7 +131,7 @@ See [security doc](https://github.com/coreos/etcd/blob/master/Documentation/op-g
|
|||||||
- However, a certificate whose SAN field does [not include any domain names but only IP addresses](https://github.com/coreos/etcd/issues/9541) would request `*tls.ClientHelloInfo` with an empty `ServerName` field, thus failing to trigger the TLS reload on initial TLS handshake; this becomes a problem when expired certificates need to be replaced online.
|
- However, a certificate whose SAN field does [not include any domain names but only IP addresses](https://github.com/coreos/etcd/issues/9541) would request `*tls.ClientHelloInfo` with an empty `ServerName` field, thus failing to trigger the TLS reload on initial TLS handshake; this becomes a problem when expired certificates need to be replaced online.
|
||||||
- Now, `(*tls.Config).Certificates` is created empty on initial TLS client handshake, first to trigger `(*tls.Config).GetCertificate`, and then to populate rest of the certificates on every new TLS connection, even when client SNI is empty (e.g. cert only includes IPs).
|
- Now, `(*tls.Config).Certificates` is created empty on initial TLS client handshake, first to trigger `(*tls.Config).GetCertificate`, and then to populate rest of the certificates on every new TLS connection, even when client SNI is empty (e.g. cert only includes IPs).
|
||||||
|
|
||||||
### `etcd`
|
### etcd server
|
||||||
|
|
||||||
- Add [`--initial-election-tick-advance`](https://github.com/coreos/etcd/pull/9591) flag to configure initial election tick fast-forward.
|
- Add [`--initial-election-tick-advance`](https://github.com/coreos/etcd/pull/9591) flag to configure initial election tick fast-forward.
|
||||||
- By default, `--initial-election-tick-advance=true`, then local member fast-forwards election ticks to speed up "initial" leader election trigger.
|
- By default, `--initial-election-tick-advance=true`, then local member fast-forwards election ticks to speed up "initial" leader election trigger.
|
||||||
@ -178,6 +178,34 @@ See [security doc](https://github.com/coreos/etcd/blob/master/Documentation/op-g
|
|||||||
- e.g. `--logger=zap --log-outputs=a.log,b.log,c.log,stdout` [writes server logs to multiple files `a.log`, `b.log` and `c.log` at the same time](https://github.com/coreos/etcd/pull/9579) and outputs to `stdout`, in [JSON-encoded format](https://godoc.org/go.uber.org/zap#NewProductionEncoderConfig).
|
- e.g. `--logger=zap --log-outputs=a.log,b.log,c.log,stdout` [writes server logs to multiple files `a.log`, `b.log` and `c.log` at the same time](https://github.com/coreos/etcd/pull/9579) and outputs to `stdout`, in [JSON-encoded format](https://godoc.org/go.uber.org/zap#NewProductionEncoderConfig).
|
||||||
- e.g. `--logger=zap --log-outputs=/dev/null` will discard all server logs.
|
- e.g. `--logger=zap --log-outputs=/dev/null` will discard all server logs.
|
||||||
|
|
||||||
|
- Fix [`mvcc` "unsynced" watcher restore operation](https://github.com/coreos/etcd/pull/9281).
|
||||||
|
- "unsynced" watcher is watcher that needs to be in sync with events that have happened.
|
||||||
|
- That is, "unsynced" watcher is the slow watcher that was requested on old revision.
|
||||||
|
- "unsynced" watcher restore operation was not correctly populating its underlying watcher group.
|
||||||
|
- Which possibly causes [missing events from "unsynced" watchers](https://github.com/coreos/etcd/issues/9086).
|
||||||
|
- Fix [server panic on invalid Election Proclaim/Resign HTTP(S) requests](https://github.com/coreos/etcd/pull/9379).
|
||||||
|
- Previously, wrong-formatted HTTP requests to Election API could trigger panic in etcd server.
|
||||||
|
- e.g. `curl -L http://localhost:2379/v3/election/proclaim -X POST -d '{"value":""}'`, `curl -L http://localhost:2379/v3/election/resign -X POST -d '{"value":""}'`.
|
||||||
|
- Fix [revision-based compaction retention parsing](https://github.com/coreos/etcd/pull/9339).
|
||||||
|
- Previously, `etcd --auto-compaction-mode revision --auto-compaction-retention 1` was [translated to revision retention 3600000000000](https://github.com/coreos/etcd/issues/9337).
|
||||||
|
- Now, `etcd --auto-compaction-mode revision --auto-compaction-retention 1` is correctly parsed as revision retention 1.
|
||||||
|
- Prevent [overflow by large `TTL` values for `Lease` `Grant`](https://github.com/coreos/etcd/pull/9399).
|
||||||
|
- `TTL` parameter to `Grant` request is unit of second.
|
||||||
|
- Leases with too large `TTL` values exceeding `math.MaxInt64` [expire in unexpected ways](https://github.com/coreos/etcd/issues/9374).
|
||||||
|
- Server now returns `rpctypes.ErrLeaseTTLTooLarge` to client, when the requested `TTL` is larger than *9,000,000,000 seconds* (which is >285 years).
|
||||||
|
- Again, etcd `Lease` is meant for short-periodic keepalives or sessions, in the range of seconds or minutes. Not for hours or days!
|
||||||
|
- Enable etcd server [`raft.Config.CheckQuorum` when starting with `ForceNewCluster`](https://github.com/coreos/etcd/pull/9347).
|
||||||
|
|
||||||
|
### API
|
||||||
|
|
||||||
|
- Add [`snapshot`](https://github.com/coreos/etcd/pull/9118) package for snapshot restore/save operations (see [`godoc.org/github.com/etcd/snapshot`](https://godoc.org/github.com/coreos/etcd/snapshot) for more).
|
||||||
|
- Add [`watch_id` field to `etcdserverpb.WatchCreateRequest`](https://github.com/coreos/etcd/pull/9065), allow user-provided watch ID to `mvcc`.
|
||||||
|
- Corresponding `watch_id` is returned via `etcdserverpb.WatchResponse`, if any.
|
||||||
|
- Add [`raftAppliedIndex` field to `etcdserverpb.StatusResponse`](https://github.com/coreos/etcd/pull/9176) for current Raft applied index.
|
||||||
|
- Add [`errors` field to `etcdserverpb.StatusResponse`](https://github.com/coreos/etcd/pull/9206) for server-side error.
|
||||||
|
- e.g. `"etcdserver: no leader", "NOSPACE", "CORRUPT"`
|
||||||
|
- Add [`dbSizeInUse` field to `etcdserverpb.StatusResponse`](https://github.com/coreos/etcd/pull/9256) for actual DB size after compaction.
|
||||||
|
|
||||||
### Package `embed`
|
### Package `embed`
|
||||||
|
|
||||||
- Add [`embed.Config.InitialElectionTickAdvance`](https://github.com/coreos/etcd/pull/9591) to enable/disable initial election tick fast-forward.
|
- Add [`embed.Config.InitialElectionTickAdvance`](https://github.com/coreos/etcd/pull/9591) to enable/disable initial election tick fast-forward.
|
||||||
@ -196,17 +224,7 @@ See [security doc](https://github.com/coreos/etcd/blob/master/Documentation/op-g
|
|||||||
- Add [`CLUSTER_DEBUG` to enable test cluster logging](https://github.com/coreos/etcd/pull/9678).
|
- Add [`CLUSTER_DEBUG` to enable test cluster logging](https://github.com/coreos/etcd/pull/9678).
|
||||||
- Deprecated `capnslog` in integration tests.
|
- Deprecated `capnslog` in integration tests.
|
||||||
|
|
||||||
### API
|
### etcdctl v3
|
||||||
|
|
||||||
- Add [`snapshot`](https://github.com/coreos/etcd/pull/9118) package for snapshot restore/save operations (see [`godoc.org/github.com/etcd/snapshot`](https://godoc.org/github.com/coreos/etcd/snapshot) for more).
|
|
||||||
- Add [`watch_id` field to `etcdserverpb.WatchCreateRequest`](https://github.com/coreos/etcd/pull/9065), allow user-provided watch ID to `mvcc`.
|
|
||||||
- Corresponding `watch_id` is returned via `etcdserverpb.WatchResponse`, if any.
|
|
||||||
- Add [`raftAppliedIndex` field to `etcdserverpb.StatusResponse`](https://github.com/coreos/etcd/pull/9176) for current Raft applied index.
|
|
||||||
- Add [`errors` field to `etcdserverpb.StatusResponse`](https://github.com/coreos/etcd/pull/9206) for server-side error.
|
|
||||||
- e.g. `"etcdserver: no leader", "NOSPACE", "CORRUPT"`
|
|
||||||
- Add [`dbSizeInUse` field to `etcdserverpb.StatusResponse`](https://github.com/coreos/etcd/pull/9256) for actual DB size after compaction.
|
|
||||||
|
|
||||||
### v3 `etcdctl`
|
|
||||||
|
|
||||||
- Add [`check datascale`](https://github.com/coreos/etcd/pull/9185) command.
|
- Add [`check datascale`](https://github.com/coreos/etcd/pull/9185) command.
|
||||||
- Add [`check datascale --auto-compact, --auto-defrag`](https://github.com/coreos/etcd/pull/9351) flags.
|
- Add [`check datascale --auto-compact, --auto-defrag`](https://github.com/coreos/etcd/pull/9351) flags.
|
||||||
@ -216,6 +234,8 @@ See [security doc](https://github.com/coreos/etcd/blob/master/Documentation/op-g
|
|||||||
- Add ["errors" field to `endpoint status`](https://github.com/coreos/etcd/pull/9206).
|
- Add ["errors" field to `endpoint status`](https://github.com/coreos/etcd/pull/9206).
|
||||||
- Add [`endpoint health --write-out` support](https://github.com/coreos/etcd/pull/9540).
|
- Add [`endpoint health --write-out` support](https://github.com/coreos/etcd/pull/9540).
|
||||||
- Previously, [`endpoint health --write-out json` did not work](https://github.com/coreos/etcd/issues/9532).
|
- Previously, [`endpoint health --write-out json` did not work](https://github.com/coreos/etcd/issues/9532).
|
||||||
|
- Fix [`watch [key] [range_end] -- [exec-command…]`](https://github.com/coreos/etcd/pull/9688) parsing.
|
||||||
|
- Previously, `ETCDCTL_API=3 ./bin/etcdctl watch foo -- echo watch event received` panicked.
|
||||||
|
|
||||||
### gRPC gateway
|
### gRPC gateway
|
||||||
|
|
||||||
@ -237,31 +257,6 @@ See [security doc](https://github.com/coreos/etcd/blob/master/Documentation/op-g
|
|||||||
- Previously record `pendingConf` boolean field scanning the entire tail of the log, which can delay hearbeat send.
|
- Previously record `pendingConf` boolean field scanning the entire tail of the log, which can delay hearbeat send.
|
||||||
- Fix [missing learner nodes on `(n *node) ApplyConfChange`](https://github.com/coreos/etcd/pull/9116).
|
- Fix [missing learner nodes on `(n *node) ApplyConfChange`](https://github.com/coreos/etcd/pull/9116).
|
||||||
|
|
||||||
### Fixed: v3
|
|
||||||
|
|
||||||
- Fix [`mvcc` "unsynced" watcher restore operation](https://github.com/coreos/etcd/pull/9281).
|
|
||||||
- "unsynced" watcher is watcher that needs to be in sync with events that have happened.
|
|
||||||
- That is, "unsynced" watcher is the slow watcher that was requested on old revision.
|
|
||||||
- "unsynced" watcher restore operation was not correctly populating its underlying watcher group.
|
|
||||||
- Which possibly causes [missing events from "unsynced" watchers](https://github.com/coreos/etcd/issues/9086).
|
|
||||||
- Fix [server panic on invalid Election Proclaim/Resign HTTP(S) requests](https://github.com/coreos/etcd/pull/9379).
|
|
||||||
- Previously, wrong-formatted HTTP requests to Election API could trigger panic in etcd server.
|
|
||||||
- e.g. `curl -L http://localhost:2379/v3/election/proclaim -X POST -d '{"value":""}'`, `curl -L http://localhost:2379/v3/election/resign -X POST -d '{"value":""}'`.
|
|
||||||
- Fix [revision-based compaction retention parsing](https://github.com/coreos/etcd/pull/9339).
|
|
||||||
- Previously, `etcd --auto-compaction-mode revision --auto-compaction-retention 1` was [translated to revision retention 3600000000000](https://github.com/coreos/etcd/issues/9337).
|
|
||||||
- Now, `etcd --auto-compaction-mode revision --auto-compaction-retention 1` is correctly parsed as revision retention 1.
|
|
||||||
- Prevent [overflow by large `TTL` values for `Lease` `Grant`](https://github.com/coreos/etcd/pull/9399).
|
|
||||||
- `TTL` parameter to `Grant` request is unit of second.
|
|
||||||
- Leases with too large `TTL` values exceeding `math.MaxInt64` [expire in unexpected ways](https://github.com/coreos/etcd/issues/9374).
|
|
||||||
- Server now returns `rpctypes.ErrLeaseTTLTooLarge` to client, when the requested `TTL` is larger than *9,000,000,000 seconds* (which is >285 years).
|
|
||||||
- Again, etcd `Lease` is meant for short-periodic keepalives or sessions, in the range of seconds or minutes. Not for hours or days!
|
|
||||||
- Enable etcd server [`raft.Config.CheckQuorum` when starting with `ForceNewCluster`](https://github.com/coreos/etcd/pull/9347).
|
|
||||||
|
|
||||||
### Fixed: v3 `etcdctl`
|
|
||||||
|
|
||||||
- Fix [`watch [key] [range_end] -- [exec-command…]`](https://github.com/coreos/etcd/pull/9688) parsing.
|
|
||||||
- Previously, `ETCDCTL_API=3 ./bin/etcdctl watch foo -- echo watch event received` panicked.
|
|
||||||
|
|
||||||
### Tooling
|
### Tooling
|
||||||
|
|
||||||
- Add [`etcd-dump-logs --entry-type`](https://github.com/coreos/etcd/pull/9628) flag to support WAL log filtering by entry type.
|
- Add [`etcd-dump-logs --entry-type`](https://github.com/coreos/etcd/pull/9628) flag to support WAL log filtering by entry type.
|
||||||
|
@ -3,7 +3,7 @@
|
|||||||
Previous change logs can be found at [CHANGELOG-3.4](https://github.com/coreos/etcd/blob/master/CHANGELOG-3.4.md).
|
Previous change logs can be found at [CHANGELOG-3.4](https://github.com/coreos/etcd/blob/master/CHANGELOG-3.4.md).
|
||||||
|
|
||||||
|
|
||||||
## v3.5.0 (TBD 2018-12-01)
|
## v3.5.0 (TBD 2018-12)
|
||||||
|
|
||||||
See [code changes](https://github.com/coreos/etcd/compare/v3.4.0...v3.5.0) and [v3.5 upgrade guide](https://github.com/coreos/etcd/blob/master/Documentation/upgrades/upgrade_3_5.md) 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](https://github.com/coreos/etcd/blob/master/Documentation/upgrades/upgrade_3_5.md).**
|
See [code changes](https://github.com/coreos/etcd/compare/v3.4.0...v3.5.0) and [v3.5 upgrade guide](https://github.com/coreos/etcd/blob/master/Documentation/upgrades/upgrade_3_5.md) 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](https://github.com/coreos/etcd/blob/master/Documentation/upgrades/upgrade_3_5.md).**
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user