File etcd.changes of Package etcd.36071
-------------------------------------------------------------------
Mon Sep 2 15:08:01 UTC 2024 - Wolfgang Frisch <wolfgang.frisch@suse.com>
- vendor-update.sh: Fix static /tmp file issue (bsc#1199031)
-------------------------------------------------------------------
Mon Mar 25 09:07:45 UTC 2024 - Elisei Roca <eroca@suse.com>
- Update to version 3.5.12:
* version: bump up to 3.5.12
* Bump golang.org/x/crypto to v0.17+ to address CVE-2023-48795
* test: fix TestHashKVWhenCompacting: ensure all goroutine finished
* print error log when creating peer listener failed
* mvcc: Printing etcd backend database related metrics inside scheduleCompaction function
* dependency: update go version to 1.20.13
* commit bbolt transaction if there is any pending deleting operations
* add tests to test tx delete consistency.
* Don't flock snapshot files
* Backport adding digest for etcd base image.
* Add a unit tests and missing flags in etcd help.
* Add missing flag in etcd help.
* Backport testutils.ExecuteUntil to 3.5 branch
* member replace e2e test
* Check if be is nil to avoid panic when be is overriden with nil by recoverSnapshotBackend on line 517
* Don't redeclare err and snapshot variable, fixing validation of consistent index and closing database on defer
* test: enable gofail in release e2e test.
* [3.5] backport health check e2e tests.
* tests: Extract e2e cluster setup to separate package
-------------------------------------------------------------------
Tue Feb 6 08:11:41 UTC 2024 - Dominique Leuenberger <dimstar@opensuse.org>
- Drop go_provides macro: it is guarded by if suse_version <= 1110,
yet has a negative impact on the general RPM dep/provides scanner
(i.e user provides were not added).
- Drop go_nostrip macro, as it does nothing useful.
-------------------------------------------------------------------
Fri Jan 19 16:30:44 UTC 2024 - Elisei Roca <eroca@suse.com>
- Update to version 3.5.11:
* version: bump up to 3.5.11
* etcdserver: add linearizable_read check to readyz.
* etcd: Update go version to 1.20.12
* server: disable redirects in peer communication
* etcdserver: add metric counters for livez/readyz health checks.
* etcdserver: add livez and ready http endpoints for etcd.
* http health check bug fixes
* server: Split metrics and health code
* server: Cover V3 health with tests
* server: Refactor health checks
* server: Run health check tests in subtests
* server: Rename test case expect fields
* server: Use named struct initialization in healthcheck test
* Backport server: Don't follow redirects when checking peer urls.
* Backport embed: Add tracing integration test.
* Backport server: Have tracingExporter own resources it initialises.
* Backport server: Add sampling rate to distributed tracing.
* upgrade github.com/stretchr/testify,google.golang.org/genproto/googleapis/api,google.golang.org/grpc to make it consistent
* CVE-2023-47108: Backport go.opentelemetry.io/otel@v1.20.0 and go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc@v0.46.0
* github workflow: run arm64 tests on every push
* etcd: upgrade go version from 1.20.10 to 1.20.11
* version: bump up to 3.5.10
* bump bbolt to 1.3.8 for etcd 3.5
* 3.5: upgrade gRPC-go to 1.58.3
* Backport corrupt check test fix "etcd server shouldn't wait for the ready notification infinitely on startup"
* etcdserver: add cluster id check for hashKVHandler
* [release-3.5]: upgrade gRPC-go to v1.52.0
* backport #14125 to release-3.5: Update to grpc-1.47 (and fix the connection-string format)
* Return to default write scheduler since golang.org/x/net@v0.11.0 started using round robin
* Bump go to v1.20.10 Part of https://github.com/etcd-io/etcd/issues/16740
* bump golang.org/x/net to 0.17.0 Part of https://github.com/etcd-io/etcd/issues/16740
* etcd: upgrade go version to 1.20.9
* Remove obsolete http 1.0 version.
* fix:Ensure that go version is only defined in one file for release-3.5
* Fix panic in etcd validate secure endpoints
* dependency: bump golang to 1.20.8
* Backport redirect metrics data into file to reduce output.
* test.sh: increase timeout for grpcproxy test
* test: add v3 curl test to cover maintenance hash/hashkv REST API
* api: fix duplicate gateway url issue
* pkg: add a verification on the pagebytes which must be > 0
* tests: Backport deflake for TestWatchDelay
* tests: Backport deflake for TestPageWriterRandom
* Backport adding unit test for socket options.
* Backport export reuse-port and reuse-address
* Fix goword failure in rafthttp/transport.go.
* Backport update to golang 1.20 minor release.
* bump go version to 1.19.12
* Update workflows to use makefile recipes for unit, integration & e2e-release.
* Backport Makefile recipes for common test commands.
* pkg/flags: fix UniqueURLs'Set to remove duplicates in UniqueURLs'uss
* Backport fix to e2e release version identifcation.
* Backport #14368 to v3.5
* Follow up https://github.com/etcd-io/etcd/pull/16068#discussion_r1263667496
* etcdserver: backport check scheduledCompactKeyName and finishedCompactKeyName before writing hash to release-3.5.
* Backport #13577 Disable auth gracefully without impacting existing watchers.
* bump go version to 1.19.11 to fix CVE GO-2023-1878
* clientv3: create keepAliveCtxCloser goroutine only if ctx can be canceled
* [3.5] etcdutl: fix db double closed
* clientv3: remove v3.WithFirstKey() in Barrier.Wait()
* update etcdctl flag description for snapshot restores
* etcdutl: update description for --mark-compacted and --bump-revision flags in snapshot restore command
* Adding optional revision bump and mark compacted to snapshot restore
* Revert "Merge pull request #16119 from natusameer/release-3.5"
* Add e2e-arm64.yaml and tests-arm64.yaml to release-3.5 scheduled at 1.30
* Backport .github/workflows: Read .go-version as a step and not separate workflow.
* Add first unit test for authApplierV3
* Early exit auth check on lease puts
* remove stack log when etcdutl restore
* etcdserver: fix corruption check when server has just been compacted
* replace gobin with go install
* [3.5] Backport updating go to latest patch release 1.19.10
* add compact hash check to help
* Fix test of clientv3/naming
* clientv3/naming/endpoints: fix endpoints prefix bug fixes bug with multiple endpoints with same prefix
* grpcproxy: fix memberlist results not update when proxy node down
-------------------------------------------------------------------
Thu May 25 08:53:52 UTC 2023 - Elisei Roca <eroca@suse.com>
- Update to version 3.5.9:
* version: bump up to 3.5.9
* Move go version to dedicated .go-version file
* tests: e2e and integration test for timetolive
* etcdserver: protect lease timetilive with auth
* Backport go update to latest patch release 1.19.9.
* Backport centralising go version for actions workflows.
* server: backport 15743, improved description of --initial-cluster-state flag
-------------------------------------------------------------------
Wed Apr 26 08:46:04 UTC 2023 - Elisei Roca <eroca@suse.com>
- Update to version 3.5.8:
* version: bump up to 3.5.8
* etcdserver: Guarantee order of requested progress notifications
* etcdserver: verify field 'username' and 'revision' present when decoding a JWT token
* set zap logging to wsproxy
* security: remove password after authenticating the user
* test: add an e2e test to reproduce https://nvd.nist.gov/vuln/detail/CVE-2021-28235
* bump golang to 1.19.8
* server/auth: disallow creating empty permission ranges
* chore: enable strict mode for test CI
* Fixes: #15266 All docker images of Architecture show amd64
* scripts: Add testing of etcd in local image in release workflow.
* server: Fix defer function closure escape
* tests: Test separate http port connection multiplexing
* server: Add --listen-client-http-urls flag to allow running grpc server separate from http server
* server: Pick one address that all grpc gateways connect to
* server: Extract resolveUrl helper function
* server: Separate client listener grouping from serving
* refactor: Use proper variable names for urls
* sever/auth: fix addUserWithNoOption of store_test
* server/auth: fix auth panic bug when user changes password
* Automated cherry-pick of #14860: Trigger release in current branch for github workflow case
* server/embed: fix data race when start insecure grpc
* server: Test watch restore
* mvcc: update minRev when watcher stays synced
* tests: Add v2 API to connection multiplexing test
* tests: Add connection muiltiplexer testing
* tests: Backport RunUtilCompletion
* tests: Backport tls for etcdctl
* tests: Extract e2e test utils
* tests: Allow specifying http version in curl
* tests: Refactor newClient args
* tests: Refactor CURLPrefixArgs
* Backport tls 1.3 support.
* server: Switch back to random scheduler to improve resilience to watch starvation
* test: Test etcd watch stream starvation under high read response load when sharing the same connection
* tests: Allow configuring progress notify interval in e2e tests
* Run go mod tidy
* Updated go to 1.19.7.
* Backport go_srcs_in_module changes and fix goword failures.
* Formatted source code for go 1.19.6.
* Bump to go 1.19.6
* Bump golang.org/x/net to v0.7.0 to address CVE GO-2023-1571.
* test:enhance the test case TestV3WatchProgressOnMemberRestart
* clientv3: correct the nextRev on receving progress notification response
* etcdserver: add failpoints walBeforeSync and walAfterSync
* Fix regression in timestamp resolution
* upgrade cockroachdb/datadriven to v1.0.2 to remove archived dependencies
* bump github.com/stretchr/testify to v1.8.1
* bump bbolt to v1.3.7 for release-3.5
* netutil: consistently format ipv6 addresses
* docker: remove nsswitch.conf
-------------------------------------------------------------------
Wed Jan 25 13:19:15 UTC 2023 - Elisei Roca <eroca@suse.com>
- Add -trimpath which removes specific build time paths from the binary
- Add -w to strip DWARF symbols, not needed
- Update to version 3.5.7:
* version: bump up to 3.5.7
* etcdserver: return membership.ErrIDNotFound when the memberID not found
* etcdserver: process the scenaro of the last WAL record being partially synced to disk
* update nsswitch.conf for 3.5
* 3.5: remove the dependency on busybox
* Remove dependency on gobin
* resolve build error: parameter may not start with quote character '
* remove .travis.yml
* format the source code and tidy the dependencies using go 1.17.13
* bump go version to 1.17.13
* deps: bump golang.org/x/net to v0.4.0 to address CVEs
* security: use distroless base image to address critical Vulnerabilities
* cidc: specify the correct branch name of release-3.5 in workflow for trivy nightly scan
* Add trivy nightly scan for release-3.5
* clientv3: revert the client side change in 14547
* client/pkg/v3: fixes Solaris build of transport
* etcdserver: fix nil pointer panic for readonly txn
* Fix go fmt error
* [3.5] Backport: non mutating requests pass through quotaKVServer when NOSPACE
* etcdserver: intentionally set the memberID as 0 in corruption alarm
- Update to version 3.5.6:
* version: bump up to 3.5.6
* release: build with consistent paths
* client/pkg/fileutil: add missing logger to {Create,Touch}DirAll
* test: add test case to cover the CommonName based authentication
* test: add certificate with root CommonName
* clientv3: do not refresh token when using TLS CommonName based authentication
* etcdserver: call the OnPreCommitUnsafe in unsafeCommit
* add range flag for delete in etcdctl
* server: add more context to panic message
* fix:close conn
* clientv3: fix the design & implementation of double barrier
* test: added e2e test case for issue 14571: etcd doesn't load auth info when recovering from a snapshot
* etcdserver: call refreshRangePermCache on Recover() in AuthStore. #14574
* server: add a unit test case for authStore.Reocver() with empty rangePermCache
* Backport #14591 to 3.5.
* client/v3: Add backoff before retry when watch stream returns unavailable
* etcdserver: added more debug log for the purgeFile goroutine
* netutil: make a `raw` URL comparison part of the urlsEqual function
* Apply suggestions from code review
* netutil: add url comparison without resolver to URLStringsEqual
* tests/Dockerfile: Switch to ubuntu 22.04 base
* Makefile: Additional logic fix
* *: avoid closing a watch with ID 0 incorrectly
* tests: a test case for watch with auth token expiration
* *: handle auth invalid token and old revision errors in watch
* server/etcdmain: add configurable cipher list to gRPC proxy listener
* Replace github.com/form3tech-oss/jwt-go with https://github.com/golang-jwt/jwt/v4
- Update to version 3.5.5:
* version: bump up to 3.5.5
* fix the flaky test fix_TestV3AuthRestartMember_20220913 for 3.5
* etcdctl: fix move-leader for multiple endpoints
* testing: fix TestOpenWithMaxIndex cleanup
* server,test: refresh cache on each NewAuthStore
* server/etcdmain: add build support for Apple M1
* tests: Fix member id in CORRUPT alarm
* server: Make corrtuption check optional and period configurable
* server: Implement compaction hash checking
* tests: Cover periodic check in tests
* server: Refactor compaction checker
* tests: Move CorruptBBolt to testutil
* tests: Rename corruptHash to CorruptBBolt
* tests: Unify TestCompactionHash and extend it to also Delete keys and Defrag
* tests: Add tests for HashByRev HTTP API
* tests: Add integration tests for compact hash
* server: Cache compaction hash for HashByRev API
* server: Extract hasher to separate interface
* server: Remove duplicated compaction revision
* server: Return revision range that hash was calcualted for
* server: Store real rv range in hasher
* server: Move adjusting revision to hasher
* server: Pass revision as int
* server: Calculate hash during compaction
* server: Fix range in mock not returning same number of keys and values
* server: Move reading KV index inside scheduleCompaction function
* server: Return error from scheduleCompaction
* server: Refactor hasher
* server: Extract kvHash struct
* server: Move unsafeHashByRev to new hash.go file
* server: Extract unsafeHashByRev function
* server: Test HashByRev values to make sure they don't change
* server: Cover corruptionMonitor with tests
* server: Extract corruption detection to dedicated struct
* server: Extract triggerCorruptAlarm to function
* move consistent_index forward when executing alarmList operation
* fix the potential data loss for clusters with only one member
* [backport 3.5] server: don't panic in readonly serializable txn
* Backport of pull/14354 to 3.5.5
* Refactor the keepAliveListener and keepAliveConn
* clientv3: close streams after use in lessor keepAliveOnce method
* Change default sampling rate from 100% to 0%
* Fix the failure in TestEndpointSwitchResolvesViolation
* update all related dependencies
* move setupTracing into a separate file config_tracing.go
* etcdserver: bump OpenTelemetry to 1.0.1
* Change default sampling rate from 100% to 0%
* server/auth: protect rangePermCache with a RW lock
* Improve error message for incorrect values of ETCD_CLIENT_DEBUG
* add e2e test cases to cover the maxConcurrentStreams
* Add flag `--max-concurrent-streams` to set the max concurrent stream each client can open at a time
* add the uint32Value data type
* Client: fix check for WithPrefix op
* client/v3: do not overwrite authTokenBundle on dial
* restrict the max size of each WAL entry to the remaining size of the file
* Add FileReader and FileBufReader utilities
* Backport two lease related bug fixes to 3.5
* scripts: Detect staged files before building release
* scripts: Avoid additional repo clone
* Make DRY_RUN explicit
* scripts: Add tests for release scripts
* server/auth: enable tokenProvider if recoved store enables auth
* Update golang.org/x/crypto to latest
-------------------------------------------------------------------
Mon Jul 18 05:47:16 UTC 2022 - dmueller@suse.com
- Update to version 3.5.4:
* version: bump up to 3.5.4
* Update conssitent_index when applying fails
* Add unit test for canonical SRV records
* Revert "trim the suffix dot from the srv.Target for etcd-client DNS lookup"
-------------------------------------------------------------------
Thu Apr 28 13:35:37 UTC 2022 - Johannes Kastl <kastl@b1-systems.de>
- add variable ETCD_OPTIONS to both service unit and configuration file
this allows the user to easily add things like "--enable-v2=true"
-------------------------------------------------------------------
Wed Apr 20 13:18:23 UTC 2022 - Elisei Roca <eroca@suse.com>
- Update to version 3.5.3:
https://github.com/etcd-io/etcd/compare/v3.5.2...v3.5.3
* clientv3: disable mirror auth test with proxy
* cv3/mirror: Fetch the most recent prefix revision
* set backend to cindex before recovering the lessor in applySnapshot
* support linearizable renew lease
* clientv3: filter learners members during autosync
* etcdserver: upgrade the golang.org/x/crypto dependency
* fix the data inconsistency issue by adding a txPostLockHook into the backend
* server: Save consistency index and term to backend even when they decrease
* server: Add verification of whether lock was called within out outside of apply
* go.mod: Upgrade to prometheus/client_golang v1.11.1
* server: Use default logging configuration instead of zap production one
* Fix offline defrag
* backport 3.5: #13676 load all leases from backend
* server/storage/backend: restore original bolt db options after defrag
* always print raft term in decimal when displaying member list in json
* enhance health check endpoint to support serializable request
* trim the suffix dot from the srv.Target for etcd-client DNS lookup
-------------------------------------------------------------------
Thu Mar 10 12:15:44 UTC 2022 - Elisei Roca <eroca@suse.com>
- Add vendor-update.sh as a source to pass obs-service-source_validator
-------------------------------------------------------------------
Wed Mar 9 14:07:20 UTC 2022 - Elisei Roca <eroca@suse.com>
- Drop ETCD_UNSUPPORTED_ARCH=arm64 from sysconfig as ARM64 is now officially supported
- Update go version to 1.16
- Update etcd.conf variables
- Add the new etcdutl into separate subpackage
- Update vendor.tar.gz to include vendoring for server, etcdctl and etcdutl
* see ./vendor-update.sh
-------------------------------------------------------------------
Wed Feb 23 15:54:14 UTC 2022 - Elisei Roca <eroca@suse.com>
- Update to version 3.5.2:
* version: bump up to 3.5.2
* Update dep: require gopkg.in/yaml.v2 v2.2.8 -> v2.4.0 due to: CVE-2019-11254.
* fix runlock bug
* server: Require either cluster version v3.6 or --experimental-enable-lease-checkpoint-persist to persist lease remainingTTL
* etcdserver,integration: Store remaining TTL on checkpoint
* lease,integration: add checkpoint scheduling after leader change
* set the backend again after recovering v3 backend from snapshot
* *: implement a retry logic for auth old revision in the client
* client/v3: refresh the token when ErrUserEmpty is received while retrying
* server/etcdserver/api/etcdhttp: exclude the same alarm type activated by multiple peers
* storage/backend: Add a gauge to indicate if defrag is active (backport from 3.6)
- Update to version 3.5.1:
* version: 3.5.1
* Dockerfile: bump debian bullseye-20210927
* client: Use first endpoint as http2 authority header
* tests: Add grpc authority e2e tests
* client: Add grpc authority header integration tests
* tests: Allow configuring integration tests to use TCP
* test: Use unique number for grpc port
* tests: Cleanup member interface by exposing Bridge directly
* tests: Make using bridge optional
* tests: Rename grpcAddr to grpcURL to imply that it includes schema
* tests: Remove bridge dependency on unix
* Decouple prefixArgs from os.Env dependency
* server: Ensure that adding and removing members handle storev2 and backend out of sync
* Stop using tip golang version in CI
* fix self-signed-cert-validity parameter cannot be specified in the config file
* fix health endpoint not usable when authentication is enabled
* workflows: remove ARM64 job for maintenance
- Update to version 3.5.0:
* See link below, diff is too big
https://github.com/etcd-io/etcd/compare/v3.4.16...v3.5.0
-------------------------------------------------------------------
Tue Sep 14 07:23:37 UTC 2021 - Johannes Segitz <jsegitz@suse.com>
- Added hardening to systemd service(s) (bsc#1181400). Modified:
* etcd.service
-------------------------------------------------------------------
Mon Aug 9 14:22:24 UTC 2021 - Thorsten Kukuk <kukuk@suse.com>
- Don't require systemd (works without, too)
-------------------------------------------------------------------
Sun Aug 8 19:17:44 UTC 2021 - Callum Farmer <gmbr3@opensuse.org>
- Change to sysuser-tools to create system user
-------------------------------------------------------------------
Thu May 13 13:42:05 UTC 2021 - alexandre.vicenzi@suse.com
- Update to version 3.4.16:
* version: 3.4.16
* Backport-3.4 exclude alarms from health check conditionally
* etcdserver/mvcc: update trace.Step condition
* Backport-3.4 etcdserver/util.go: reduce memory when logging range requests
* .travis,Makefile,functional: Bump go 1.12 version to v1.12.17
* integration: Fix 'go test --tags cluster_proxy --timeout=30m -v ./integration/...'
* pkg/tlsutil: Adjust cipher suites for go 1.12
* Fix pkg/tlsutil (test) to not fail on 386.
* bill-of-materials.json: Update golang.org/x/sys
* .travis,test: Turn race off in Travis for go version 1.15
* integration : fix TestTLSClientCipherSuitesMismatch in go1.13
* vendor: Run go mod vendor
* go.mod,go.sum: Bump github.com/creack/pty that includes patch
* go.mod,go.sum: Comply with go v1.15
* etcdserver,wal: Convert int to string using rune()
* integration,raft,tests: Comply with go v1.15 gofmt
* .travis.yml: Test with go v1.15.11
* pkpkg/testutil/leak.go: Allowlist created by testing.runTests.func1
* vendor: Run go mod vendor
* go.sum, go.mod: Run go mod tidy with go 1.12
* go.mod: Pin go to 1.12 version
* etcdserver: fix incorrect metrics generated when clients cancel watches
* integration: relax leader timeout from 3s to 4s
* etcdserver: when using --unsafe-no-fsync write data
* server: Added config parameter experimental-warning-apply-duration
* etcdserver: Fix PeerURL validation
-------------------------------------------------------------------
Fri Apr 16 20:34:06 UTC 2021 - Dirk Müller <dmueller@suse.com>
- update etcd.service: avoid args from commandline and environment
as it leads to start failure (bsc#1183703)
-------------------------------------------------------------------
Wed Mar 03 13:50:06 UTC 2021 - alexandre.vicenzi@suse.com
- Update to version 3.4.15:
* version: 3.4.15
* [Backport-3.4] etcdserver/api/etcdhttp: log successful etcd server side health check in debug level
* etcdserver: Fix 64 KB websocket notification message limit
* vendor: bump gorilla/websocket
* pkg/fileutil: fix F_OFD_ constants
-------------------------------------------------------------------
Fri Jan 08 12:29:16 UTC 2021 - rbrown@suse.com
- Update to version 3.4.14:
* version: 3.4.14
* pkg/netutil: remove unused "iptables" wrapper
* tools/etcd-dump-metrics: validate exec cmd args
* clientv3: get AuthToken automatically when clientConn is ready.
* etcdserver: add ConfChangeAddLearnerNode to the list of config changes
* integration: add flag WatchProgressNotifyInterval in integration test
-------------------------------------------------------------------
Thu Sep 10 09:56:27 UTC 2020 - rbrown@suse.com
- Update to version 3.4.13:
* version: 3.4.13
* pkg: file stat warning
* Automated cherry pick of #12243 on release 3.4
* version: 3.4.12
* etcdserver: Avoid panics logging slow v2 requests in integration tests
* version: 3.4.11
* Revert "etcdserver/api/v3rpc: "MemberList" never return non-empty ClientURLs"
* *: fix backport of PR12216
* *: add experimental flag for watch notify interval
* clientv3: remove excessive watch cancel logging
* etcdserver: add OS level FD metrics
* pkg/runtime: optimize FDUsage by removing sort
* clientv3: log warning in case of error sending request
* etcdserver/api/v3rpc: "MemberList" never return non-empty ClientURLs
-------------------------------------------------------------------
Thu Aug 06 09:30:53 UTC 2020 - rbrown@suse.com
- Update to version 3.4.10 [CVE-2020-15106][boo#1174951]:
* version: 3.4.10
* Documentation: note on data encryption
* etcdserver: change protobuf field type from int to int64 (#12000)
* pkg: consider umask when use MkdirAll
* etcdmain: let grpc proxy warn about insecure-skip-tls-verify
* etcdmain: fix shadow error
* pkg/fileutil: print desired file permission in error log
* pkg: Fix dir permission check on Windows
* auth: Customize simpleTokenTTL settings.
* mvcc: chanLen 1024 is to biger,and it used more memory. 128 seems to be enough. Sometimes the consumption speed is more than the production speed.
* auth: return incorrect result 'ErrUserNotFound' when client request without username or username was empty.
* etcdmain: fix shadow error
* doc: add TLS related warnings
* etcdserver:FDUsage set ticker to 10 minute from 5 seconds. This ticker will check File Descriptor Requirements ,and count all fds in used. And recorded some logs when in used >= limit/5*4. Just recorded message. If fds was more than 10K,It's low performance due to FDUsage() works. So need to increase it.
* clientv3: cancel watches proactively on client context cancellation
* wal: check out of range slice in "ReadAll", "decoder"
* etcdctl, etcdmain: warn about --insecure-skip-tls-verify options
* Documentation: note on the policy of insecure by default
* etcdserver: don't let InternalAuthenticateRequest have password
* auth: a new error code for the case of password auth against no password user
* Documentation: note on password strength
* etcdmain: best effort detection of self pointing in tcp proxy
* Discovery: do not allow passing negative cluster size
* wal: fix panic when decoder not set
* embed: fix compaction runtime err
* pkg: check file stats
* etcdserver, et al: add --unsafe-no-fsync flag
* version: 3.4.9
* wal: add TestValidSnapshotEntriesAfterPurgeWal testcase
* wal: fix crc mismatch crash bug
* rafthttp: log snapshot download duration
* version: 3.4.8
* rafthttp: improve snapshot send logging
* *: make sure snapshot save downloads SHA256 checksum
* etcdserver/api/snap: exclude orphaned defragmentation files in snapNames
* etcdserver: continue releasing snap db in case of error
* etcdserver,wal: fix inconsistencies in WAL and snapshot
* cherry pick of #11564 (#11880)
* mvcc: fix deadlock bug
* auth: optimize lock scope for CheckPassword
* auth: ensure RoleGrantPermission is compatible with older versions
* etcdserver: print warn log when failed to apply request
* auth: cleanup saveConsistentIndex in NewAuthStore
* auth: print warning log when error is ErrAuthOldRevision
* auth: add new metric 'etcd_debugging_auth_revision'
* tools/etcd-dump-db: add auth decoder, optimize print format
* *: fix auth revision corruption bug
* etcdserver: watch stream got closed once one request is not permitted (#11708)
* version: 3.4.7
* wal: add "etcd_wal_writes_bytes_total"
* pkg/ioutil: add "FlushN"
* test: auto detect branch when finding merge base
* mvcc/kvstore:when the number key-value is greater than one million, compact take too long and blocks other requests
* version: 3.4.6
* lease: fix memory leak in LeaseGrant when node is follower
* version: 3.4.5
* words: whitelist "racey"
* Revert "version: 3.4.5"
* words: whitelist "hasleader"
* version: 3.4.5
* etcdserver/api/v3rpc: handle api version metadata, add metrics
* clientv3: embed api version in metadata
* etcdserver/api/etcdhttp: log server-side /health checks
* proxy/grpcproxy: add return on error for metrics handler
* etcdctl: fix member add command
* version: 3.4.4
* etcdserver: fix quorum calculation when promoting a learner member
* etcdserver: corruption check via http
* mvcc/backend: check for nil boltOpenOptions
* mvcc/backend: Delete orphaned db.tmp files before defrag
* auth: correct logging level
* e2e: test curl auth on onoption user
* auth: fix NoPassWord check when add user
* auth: fix user.Options nil pointer
* mvcc/kvstore:fixcompactbug
* mvcc: update to "etcd_debugging_mvcc_total_put_size_in_bytes"
* mvcc: add "etcd_mvcc_put_size_in_bytes" to monitor the throughput of put request.
* clientv3: fix retry/streamer error message
* etcdserver: wait purge file loop during shutdown
* integration: disable TestV3AuthOldRevConcurrent
* etcdserver: remove auth validation loop
* scripts/release: list GPG key only when tagging is needed
-------------------------------------------------------------------
Sun Jun 7 21:09:20 UTC 2020 - Dirk Mueller <dmueller@suse.com>
- update home-page url
-------------------------------------------------------------------
Thu Feb 6 09:03:22 UTC 2020 - Michal Jura <mjura@suse.com>
- Update to version 3.4.3:
* version: 3.4.3
* *: use Go 1.12.12
* rafthttp: add 3.4 stream type
* etcdserver: strip patch version in metrics
* etcdserver: strip patch version in cluster version
* etcdserver: unset old cluster version in metrics
* Add version, tag and branch checks to release script
* scripts: fix read failure prompt in release; use https for git clone.
* version: 3.4.2
* etcdserver: trace compaction request; add return parameter 'trace' to applierV3.Compaction() mvcc: trace compaction request; add input parameter 'trace' to KV.Compact()
* etcdserver: trace raft requests.
* etcdserver: add put request steps. mvcc: add put request steps; add trace to KV.Write() as input parameter.
* pkg: use zap logger to format the structure log output.
* pkg: add field to record additional detail of trace; add stepThreshold to reduce log volume.
* pkg: create package traceutil for tracing. mvcc: add tracing steps:range from the in-memory index tree; range from boltdb. etcdserver: add tracing steps: agreement among raft nodes before linerized reading; authentication; filter and sort kv pairs; assemble the response.
* clientv3: Replace endpoint.ParseHostPort with net.SplitHostPort to fix IPv6 client endpoints
* clientv3: Set authority used in cert checks to host of endpoint
* tests/e2e: fix metrics tests
* etcdctl: fix member add command
* scripts/build-binary: fix darwin tar commands
* scripts/release: fix SHA256SUMS command
* version: 3.4.1
* scripts/release: fix docker push command
* integration: fix bug in for loop, make it break properly
* embed: expose ZapLoggerBuilder
* vendor: upgrade to gRPC v1.23.1
-------------------------------------------------------------------
Thu Oct 10 09:50:11 UTC 2019 - rbrown@suse.com
- Update to version 3.3.15:
* version: 3.3.15
* vendor: regenerate
* go.mod: remove, change back to "glide"
* version: 3.3.14
* Documentation/upgrades: special upgrade guides for >= 3.3.14
* version: 3.3.14-rc.0
* vendor: regenerate
* go.mod: regenerate
* gitignore: track vendor directory
* *: test with Go 1.12.9
* version: 3.3.14-beta.0
* tests/e2e: add missing curl
* e2e: move
* test: do not run "v2store" tests
* test: bump up timeout for e2e tests
* travis: fix functional tests
* functional: add back, travis
* auth: fix tests
* travis: do not run functional for now
* travis: skip windows build
* test: fix repo path
* tests/e2e: fix
* build: remove tools
* integration: fix tests
* integration: fix "HashKVRequest"
* functional: update
* travis.yml: fix, run e2e
* integration: update
* etcdserver: detect leader change on reads
* clientv3: rewrite based on 3.4
* raft: fix compile error in "Panic"
* pkg/*: add
* etcdserver/api/v3rpc: support watch fragmentation
* tests: update
* *: regenerate proto
* etcdserver/etcdserverpb/rpc.proto: add watch progress/fragment
* vendor: regenerate, upgrade gRPC to 1.23.0
* go.mod: migrate to Go module
* scripts: update release, genproto, dep
* Makefile/build: sync with 3.4 branch
* *: use new adt.IntervalTree interface
* pkg/adt: remove TODO
* pkg/adt: fix interval tree black-height property based on rbtree
* pkg/adt: document textbook implementation with pseudo-code
* pkg/adt: mask test failure, add TODO
* pkg/adt: add "IntervalTree.Delete" failure case
* pkg/adt: test node "11" deletion
* pkg/adt: README "IntervalTree.Delete" test case images
* pkg/adt: README initial commit
* pkg/adt: add "visitLevel", make "IntervalTree" interface, more tests
* pkg: clean up code format
* travis: update
* etcdserver: add "etcd_server_snapshot_apply_inflights_total"
* etcdserver/api: add "etcd_network_snapshot_send_inflights_total", "etcd_network_snapshot_receive_inflights_total"
* Raft HTTP: fix pause/resume race condition
* ctlv3: add missing newline in EndpointHealth
* ctlv3: support "write-out" for "endpoint health" command
* etcd: Replace ghodss/yaml with sigs.k8s.io/yaml
* version: bump up 3.3.13
* clientv3: fix race condition in "Endpoints" methods
* etcdserver: improve heartbeat send failures logging
* Documentation metadata for 3.3 branch (#10692)
* vendor: add missing files
* vendor: Run scripts/updatedeps.sh to cleanup unused code
* client: Switch to case sensitive unmarshalling to be compatible with ugorji
* *: update bill-of-materials
* vendor: Add json-iterator and its dependencies
* scripts: Remove generated code and script
* client: Replace ugorji/codec with json-iterator/go
* mvcc: fix db_compaction_total_duration_milliseconds
* wal: Add test for Verify
* wal: add Verify function to perform corruption check on wal contents
* *: Change gRPC proxy to expose etcd server endpoint /metrics
* travis: fix tests by using proper code path
* etcdserver: Use panic instead of fatal on no space left error
* raft: cherry pick of #8334 to release-3.3
* travis.yml: update Go 1.10.8
* version: 3.3.12
* etcdctl: fix strings.HasPrefix args order
* version: 3.3.11+git
-------------------------------------------------------------------
Wed Jul 24 08:40:09 UTC 2019 - matthias.gerstner@suse.com
- removal of SuSEfirewall2 service, since SuSEfirewall2 has been replaced by
firewalld, see [1].
[1]: https://lists.opensuse.org/opensuse-factory/2019-01/msg00490.html
-------------------------------------------------------------------
Thu Jun 13 09:48:45 UTC 2019 - Guillaume GARDET <guillaume.gardet@opensuse.org>
- Fix aarch64 start
-------------------------------------------------------------------
Wed Jun 5 13:08:46 UTC 2019 - <jsegitz@suse.com>
- Added README.security and wording in the configuration file to
ensure users are aware that they need to configure etcd to require
authentication
-------------------------------------------------------------------
Wed Jan 30 11:58:15 UTC 2019 - Panagiotis Georgiadis pgeorgiadis@suse.com
- Update to version 3.3.11:
* version: 3.3.11
* auth: fix cherry-pick
* auth: disable CommonName auth for gRPC-gateway
* grpcproxy: fix memory leak
* bsc#1121850 CVE-2018-16886
-------------------------------------------------------------------
Wed Dec 19 01:28:24 UTC 2018 - clee@suse.com
- Updated to a supported version of Go (due to security reasons)
* bsc#1118897 CVE-2018-16873
go#29230 cmd/go: remote command execution during "go get -u"
* bsc#1118898 CVE-2018-16874
go#29231 cmd/go: directory traversal in "go get" via curly braces in import paths
* bsc#1118899 CVE-2018-16875
go#29233 crypto/x509: CPU denial of service
-------------------------------------------------------------------
Wed Dec 12 12:43:23 UTC 2018 - alvaro.saurin@suse.com
- Updated to a supported version of Go (due to security reasons)
-------------------------------------------------------------------
Mon Nov 12 09:33:41 UTC 2018 - opensuse-packaging@opensuse.org
- Update to version 3.3.10:
* version: 3.3.10
* travis.yml: use Go 1.10.4
* etcdserver: add "etcd_server_read_indexes_failed_total"
* rafthttp: probe all raft transports
* etcdserver: add "etcd_server_health_success/failures"
* clientv3: concurrency.Mutex.Lock() - preserve invariant
* etcdserver/api/rafthttp: add v3 snapshot send/receive metrics
* etcdserver/api/snap: add v3 snapshot fsync metrics
* tests/Dockerfile: update, fix GOPATH
* etcdctl: cherry pick of #10109 to release-3.3
* etcdserver: remove duplicated imports
* etcdserver: add "etcd_server_id"
* etcdserver: clarify read index wait timeout warnings
* rafthttp: clarify "became inactive" warning
* Merge pull request #9861 from gyuho/race
* etcdserver: code clean up
* vendor: add go-grpc-middleware
* etcdserver: add grpc interceptor to log info on incoming requests to etcd server
* version: bump up to 3.3.9+git
* version: 3.3.9
* etcdserver: add "etcd_server_go_version" metric
* clientv3: fix keepalive send interval when response queue is full
* added "now := time.Now()"
* remove "github.com/gogo/protobuf/plugin/stringer"
* etcdserver: rename to "heartbeat_send_failures_total"
* mvcc: add "etcd_mvcc_hash_(rev)_duration_seconds"
* mvcc/backend: fix defrag duration scale
* mvcc/backend: add "etcd_disk_backend_defrag_duration_seconds"
* mvcc/backend: document metrics ExponentialBuckets
* mvcc/backend: clean up mutex, logging
* etcdserver: add "etcd_server_slow_apply_total"
* etcdserver: add "etcd_server_heartbeat_failures_total"
* e2e: log errors TestV3CurlCipherSuitesMismatch for now
* Makefile: use Go 1.10.3 by default
* *: use Go 1.10.3 for testing
* mvcc: avoid unnecessary metrics update
* mvcc: add "etcd_mvcc_db_total_size_in_use_in_bytes"
* mvcc: add "etcd_mvcc_db_total_size_in_bytes"
* etcdserver: add "etcd_server_quota_backend_bytes"
* etcdserver: add "etcd_server_slow_read_indexes_total"
* etcdserver: clarify read index warnings
* tests: update test scripts
* version: 3.3.8+git
* version: 3.3.8
* travis: use Go 1.9.7
* gitignore: ignore "docs" and "vendor"
* clientv3: backoff on reestablishing watches when Unavailable errors are encountered
* tests/semaphore.test.bash: update
* Makefile: update
* etcdserver: Fix txn request 'took too long' warnings to use loggable request stringer
* etcdserver: Add response byte size and range response count to took too long warning
* etcdserver: Replace value contents with value_size in request took too long warning
* version: bump up to 3.3.7+git
* version: 3.3.7
* e2e: test client-side cipher suites with curl
* etcdmain: add "--cipher-suites" flag
* embed: support custom cipher suites
* integration: test client-side TLS cipher suites
* pkg/transport: add "TLSInfo.CipherSuites" field
* pkg/tlsutil: add "GetCipherSuite"
* tests/e2e: test move-leader command with TLS
* ctlv3: support TLS endpoints for move-leader command
* scripts/release: Fix docker push for 3.1 releases, remove inaccurate warning at the end of release script
* version: bump up to 3.3.6+git
* version: 3.3.6
* mvcc: fix panic by allowing future revision watcher from restore operation
* auth: fix panic using WithRoot and improve JWT coverage
* auth: a new auth token provider nop
* scripts: Fix remote tag check, gcloud login and umask in release script
* version: 3.3.5+git
* version: 3.3.5
* tests/e2e: separate coverage tests for exec commands
* etcdctl/ctlv3: fix watch with exec commands
* tests: use Go 1.9.6
* functional/tester: handle retries in "caseUntilSnapshot"
* functional.yaml: use lower ports
* scripts: Fix a few etcd release script bugs and make it reenterant.
* etcdmain: document peer-cert-allowed-cn flag
* version: 3.3.4+git
* version: 3.3.4
* scripts: Add scripts/release that performs 'etcd-release-runbook' (https://goo.gl/Gxwysq) style release workflow
* etcdserver: log skipping initial election tick
* etcdmain: add "--initial-election-tick-advance"
* embed: add "InitialElectionTickAdvance"
* integration: set InitialElectionTickAdvance to true by default
* etcdserver: add "InitialElectionTickAdvance"
* etcdserver: add is_leader prometheus metric that is 1 on the leader.
* integration: re-overwrite "httptest.Server" TLS.Certificates
* pkg/transport: don't set certificates on tls config
* functional: create symlinks for build
* travis: run build tests for "functional"
* snapshot: remove tests
* functional: initial commit (copied from master)
* snapshot: initial commit (for functional tests)
* test: simplify
* etcdserver/stats: make all fields guarded by mutex.
* etcdserver/stats: fix stats data race.
* test: remove build flag "-a"
* cmd/vendor: add "go.uber.org/zap"
* pkg/proxy: move from "pkg/transport"
* tools: remove
* travis: update
* test/*: clean up semaphore scripts
* etcdserver: fix "lease_expired_total" metrics
* tests: move test scripts
* semaphore.sh: update Go version
* travis: use Go 1.9.5
* version: 3.3.3+git
* version: 3.3.3
* Documentation/upgrades: backport all upgrade guides
* compactor: simplify interval logic on periodic compactor
* compactor: adjust interval for period <1-hour
* compactor: clean up
* rafthttp: add missing "peer_sent_failures_total" metrics call
* etcdserver: adjust election ticks on restart
* etcdserver: make "advanceTicks" method
* rafthttp: add "ActivePeers" to "Transport"
* version: 3.3.2+git
* version: 3.3.2
* clientv3/integration: test "rpctypes.ErrLeaseTTLTooLarge"
* *: enforce max lease TTL with 9,000,000,000 seconds
* *: remove unused env vars
* hack/scripts-dev: fix indentation in run.sh
* hack/scripts-dev: sync with master branch
* travis: update Go version string
* e2e: fix missing "apiPrefix"
* embed: fix wrong compactor imports
* Documentation/op-guide: highlight defrag operation "--endpoints" flag
* etcdctl: highlight "defrag" command caveats
* e2e: add "Election" grpc-gateway test cases
* e2e: add "spawnWithExpectLines"
* api/v3election: error on missing "leader" field
* Documentation: make "Consul" section more objective
* etcdserver: enable "CheckQuorum" when starting with "ForceNewCluster"
* httpproxy: cancel requests when client closes a connection
* semaphore: release test version
* embed: fix revision-based compaction with default value
* embed: document/validate compaction mode
* version: 3.3.1+git
-------------------------------------------------------------------
Tue Jun 5 09:24:54 UTC 2018 - dcassany@suse.com
- Make use of %license macro
-------------------------------------------------------------------
Wed May 30 11:10:04 UTC 2018 - jmassaguerpla@suse.com
- Fix go 1.9.4 requirements. We had also "BuildRequires: go >= 1.9.4"
and this was pulling go 1.10, too.
(bsc#1095184)
-------------------------------------------------------------------
Wed Feb 28 10:27:43 UTC 2018 - jmassaguerpla@suse.com
- Build require go 1.9.4 or newer, since etcd has been tested and
built on that. See previous changelog.
fix#go_requirement (bsc#1095184).
-------------------------------------------------------------------
Thu Feb 22 06:54:05 UTC 2018 - opensuse-packaging@opensuse.org
- Update to version 3.3.1 (bsc#1095184):
* gitignore: add ".Dockerfile-functional-tester"
* Dockerfile-functional-tester: initial commit
* tools/functional-tester: update README for local docker testing
* hack: sync with etcd master
* mvcc: restore unsynced watchers
* etcdserver: improve request took too long warning
* semaphore: use Go 1.9.4, update release upgrade test version
* travis: use Go 1.9.4 with TARGET_GO_VERSION
* hack/scripts-dev: Makefile with Go 1.9.4, 1.8.7
* version: 3.3.1
Needed by feature#node_removal
-------------------------------------------------------------------
Thu Feb 1 16:58:18 CET 2018 - ro@suse.de
- do not build on s390, only on s390x (no go on s390)
-------------------------------------------------------------------
Thu Nov 23 13:48:13 UTC 2017 - rbrown@suse.com
- Replace references to /var/adm/fillup-templates with new
%_fillupdir macro (boo#1069468)
-------------------------------------------------------------------
Wed Aug 30 10:49:23 UTC 2017 - vrothberg@suse.com
- transform etcd.service file from dos to unix
-------------------------------------------------------------------
Fri Aug 11 11:25:29 UTC 2017 - kiall@macinnes.ie
- Require golang 1.8, as using earlier versions will fail to build
-------------------------------------------------------------------
Thu Aug 3 14:04:09 UTC 2017 - vrothberg@suse.com
- Fix bsc#1046717: set (io)nice value in service file
-------------------------------------------------------------------
Thu Jul 27 14:55:44 UTC 2017 - opensuse-packaging@opensuse.org
- Update to version 3.2.4:
* improve example run commands in docker_guide
* improve documentation regarding docker cluster
* version: bump to v3.2.0+git
* etcdserver/api: add 3.2 in capability
* rafthttp: add 3.2.0 stream type
* *: 'ignore_value' to detach lease with PutRequest
* *: regenerate proto files with 'ignore_value'
* v3rpc: error for non-empty value with ignore_value
* etcdserver: use prev-value for ignore_value writes
* integration: test Put,Txn with ignore_value flag
* clientv3: add 'WithIgnoreValue' option
* ctlv3: add '--ignore-value' flag to 'put' command
* e2e: test put command with '--ignore-value' flag
* grpcproxy: handle 'IgnoreValue' field in PutRequest
* etcdserver: increase snapshot to 100,000
* auth, etcdserver: let maintenance services require root role
* e2e: add cases for defrag and snapshot with authentication
* etcd-tester: use 10K for '--snapshot-count'
* kv.go: Fixed []byte to string conversion syntax in comment
* pkg/transport: Obey the usual laws of ssl when using a private PKI
* ctlv3: print cluster info after adding new member
* clientv3: balancer uses one connection at a time
* pkg/report: add nil checking for getTimeSeries
* Documentation: document upgrading to v3.1
* etcdserver: use ReqTimeout for linearized read
* clientv3/txn.go : removed the TODO: add a Do for shortcut the txn without any condition
* test: passed the test script arguments as the test function parameters
* glide: update 'golang.org/x/net'
* vendor: update 'golang.org/x/net'
* grpcproxy, etcdmain, integration: add close channel to kv proxy
* Polish note about varying parameters for each member
* store: set Dir attribute, when node expired
* Documentation: update experimental_apis for v3.1 release
* Documentation: fix typo s/endpoint-health/endpoint health/
* NEWS: fix date for v3.1 release
* clientv3/concurrency: fix rev comparison on concurrent key deletion
* embed/etcd.go: make v2 endpoint optional. fixes #7100
* integration: test STM apply on concurrent deletion
* pkg/flags: fixed prefix checking of the env variables
* pkg/cpuutil: add cpuutil
* etcdctlv3: snapshot restore works with lease key
* pkg/netutil: use native byte ordering for route information
* documentation: update build documentation
* op-guide: change grpc-proxy from 'pre' to alpha'
* README: remove ACI, update Go version
* roadmap: update roadmap
* etcdmain: add gateway and grpc-proxy commands to etcd help
* etcdserverpb: rework documentation for range request
* concurrency: variadic stm options
* concurrency: extend STM interface to Get from any of a list of keys
* concurrency: STM WithPrefetch option
* concurrency: STM snapshot isolation level
* benchmark: update for new stm interface
* integration: fix STM tests to compile against new interface
* Documentation: Add upgrade gotchas/further info for better search visibility
* embed: support user defined grpc services.
* doc: mention HTTP JSON in doc link
* embed: add example for ServiceRegister.
* contrib/recipes/key.go : fixed method comment
* client: add GetVersion method
* tools: add rust-etcd to the list of libraries.
* vendor: update tablewritier
* ctlv3: right-align the table output
* *: 'ignore_lease' to detach value with PutRequest
* *: regenrate proto files with 'ignore_lease'
* v3rpc: error for non empty lease with 'ignore_lease'
* etcdserver: use prev-lease for 'ignore_lease' writes
* integration: put,txn with 'ignore_lease' flag
* clientv3: add WithIgnoreLease option
* ctlv3: add '--ignore-lease' flag to put command
* e2e: test put command with '--ignore-lease' flag
* grpcproxy: handle 'IgnoreLease' field in PutRequest
* .gitignore: Adding .idea to .gitignore
* Documentation: C library added
* Documentation: Deleted non-existing project from libraries-and-tools.md
* clientv3: test closing client cancels blocking dials
* clientv3: use DialContext
* auth: refactor test to use common setup
* test: bump e2e timeout to 15 minutes
* auth: Adding unit tests
* integration: test domain name URLs are rejected before binding
* embed: reject binding listeners to domain names
* clientv3: fix balancer update address bug
* test: fix failure message in TestEmbedEtcd
* integration: add test case in dial_test to ensure balancer.updateAddrs works properly
* e2e: do not remove the member we connect to
* contrib: add etcd cluster deploy on systemd docs
* etcdmain: ppc64le platform support
* clientv3: start a session with existing lease
* auth, etcdserver: authenticate clients based on certificate CommonName
* e2e: add a case for CommonName auth of v3 API
* netutil: add dualstack to linux_route
* auth: unit-test for authStore.AuthDisable()
* auth: test for AuthStore.IsAdminPermitted
* scripts: Add support to build ppc64le binary for release
* rafthttp: use http.Request.WithContext instead of Cancel
* clientv3: remove strict yaml dependency
* test: clientv3 integration tests with proxy
* *: Use http.Request.WithContext instead of Cancel
* grpcproxy: don't use WithRequireLeader for watch event stream
* pkg/netutil: name GetDefaultInterfaces consistent
* clientv3: add DialOptions to config
* clientv3: sends keepalive reqs immediately after lease keep alive stream reset
* pkg/report: add min/max latency per second
* auth: add a test case for recoverying from snapshot
* auth: correct initialization in NewAuthStore()
* clientv3: only start lease stream after first keepalive call
* clientv3: remove cancelWhenStop from lease implementation
* clientv3/integration: stop member before keepalive in TestLeaseKeepAliveInitTimeout
* clientv3: uses direct client calls in integration tests
* test: Fix gosimple errors
* travis: Update fmt check gotools
* Documentation: replace px typo with ps
* Revert "Merge pull request #7139 from heyitsanthony/proxy-rlock"
* grpcproxy: support CountOnly
* v3rpc: LeaseTimeToLive returns TTL=-1 resp on lease not found
* clientv3/integration: test lease not found on TimeToLive()
* integration: don't expect lease not found error for TestV3GetNonExistLease
* raft: add Ready.MustSync
* etcdserverpb, clientv3: clarify WithLimit documentation
* grpcproxy: respect CompactRevision in watcher
* auth: simplify merging range perm
* travis: disable email notifications
* op-guide: fix remove instructions in runtime-configuration and conform to style
* clientv3: KeepAliveOnce returns ErrLeaseNotFound if TTL <= 0
* grpcproxy: split out leadership detection code
* grpcproxy: don't wait for ctx.Done() to close kv donec
* integration: wait five elections before creating watch for require leader test
* e2e: modify e2e to run code coverage
* etcdmain: whitelist etcd binary flags
* grpcproxy: support forcing leader as available
* Documentation/libraries-and-tools: add vitess
* clientv3: fix lease keepalive duration
* grpcproxy: refactor chan stream out of watch_client_adapter
* grpcproxy: add lease coalescing support
* grpcproxy: incorporate lease proxy into existing proxy framework
* clientv3: fix lease keepalive duration
* raft: fix read index request for #7331
* clientv3: let user provide a client context through Config
* clientv3: add cluster version checking
* integration: test RejectOldCluster
* test: add e2e to coverage test
* *: add and expose StopSignal field in ExpectProcess
* e2e: unshadow err and remove bogus err checking in spawnWithExpects()
* pkg/transport: remove dependency on pkg/fileutils
* raft: revise test case and fix typo
* op-guide: use host volume in Docker command
* clientv3: fix typo in README
* grpcproxy: only return ctx error in chan stream if recvc is empty
* tcpproxy: don't use range variable in reactivate goroutine
* clientv3: do not set next keepalive time <= now+TTL
* integration: test keepalives for short TTLs
* auth: keep old revision in 'NewAuthStore'
* integration: add 'TestV3HashRestart'
* netutil: use ipv4 host by default
* integration: permit background watch streams in TestWatchCancelOnServer
* grpcproxy: add 'register' address
* MAINTAINERS: add Fanmin
* travis: use Go 1.8 in master branch
* NEWS: add v3.1.2 release notes
* *: remove trailing space, upgrade test on v3.1
* e2e: fix -tags cov builds
* clientv3: use any port for metrics example
* etcdmain: enable grpc tracing with --debug
* embed: enable debug endpoint if Debug is set and add net.trace events
* Documentation: add documentation for grpc lease stream coalescing
* script: Build docker image for ppc64le
* integration: ensure leader is up in waitLeader() and clusterMustProgress()
* etcdctl: modify etcdctl v2 and v3 for code coverage
* e2e: add etcdctl to e2e test
* test: build test binary for etcdctl
* etcdctl: show warning if ETCDCTL_API is not set in v2 --help
* clientv3: bump example requestTimeout for slow CI
* op-guide: add notes on mounting certs directory
* grpcproxy: return closing error when stream is canceled from conn close
* raft: make TestNodeTick reliable
* test: run unused and gosimple over all packages at once
* Documentation/op-guide: use exact certs dir for Container Linux
* Documentation: suggest ionice for disk tuning
* api: default to V3 capability
* integration: don't set v3 capability since now default
* etcdctl: correctly batch revisions in make-mirror
* libraries-and-tools: rename to integrations
* production-users: add Kubernetes
* etcd-tester: check expired lease with -1 TTL
* embed: use machine default host only for default value, 0.0.0.0
* etcdmain: log machine default host after update check
* clientv3: Add KeyExists and KeyNotExists Cmp helpers
* etcdctl: Fix migrate example in README.md
* contrib: suppress gosimple errors of raftexample
* test: eschew you
* clientv3: pass back dial error on dial timeout
* *: eschew you from documentation
* vendor: lock down some soft dependencies
* test: run 'staticcheck'
* *: remove never-unused vars, minor lint fix
* Documentation: add PD to production users
* vendor: import jwt-go for auth v3
* *: support jwt token in v3 auth API
* Documentation: add qingcloud to production user
* doc: add usecase of qiniu
* Documentation: add production user
* doc: update use case of qiniu
* Documentation: Add Tencent Games to production users
* Documentation: warn membership change while migration
* doc: Add hyper.sh to production users
* doc: Add use case in Meitu Inc.
* gateway: fix the dns discovery method
* lease: guard 'Lease.itemSet' from concurrent writes
* Documentation: sign source zip files
* clientv3: close balancer to avoid goroutine leak in balancer_test.go
* e2e: don't remove member used to connect to etcd cluster
* Documentation: add Grab etcd use case
* *: fix minor typos
* backend: readtx
* mvcc: txns and r/w views
* lease: support mvcc txn
* etcdserver: support mvcc txn
* benchmark: support mvcc txn
* etcdctl: support mvcc txn
* doc: Add daocloud.io to production users
* test: install packages when building coverage tests
* clientv3util: Add KeyExists and KeyMissing examples
* clientv3: define error type for closed watcher
* grpcproxy: configure register to Cluster API
* etcdmain: add register,resolver flags
* Documentation/op-guide: document grpcproxy sync
* etcdmain: SdNotify when gateway, grpc-proxy are ready
* clientv3: serialize updating notifych in balancer
* clientv3: send frst down() func after recieving first notified addr
* Documentation: add huawei product user
* doc: add Baidu Waimai
* doc: fix title size
* NEWS: update v3.1.3
* doc: add branch.io use case into production users
* auth: nil check AuthInfo when checking admin permissions
* testutil: add CheckAfterTest for calling AfterTest without a testing.T
* clientv3: use CheckAfterTest after terminating cluster
* op-guide: update gateway routing policy
* discovery: fix print format
* Documentation: add txaio-etcd to integrations
* doc/learning: complete the api guide
* adapter, integration: split out grpc adapters from grpcproxy package
* clientv3: permit creating client without grpc connection
* concurrency: support returning response header for mutex
* v3client: a bridge between an etcdserver and a clientv3
* v3lock: server-side api for locking
* scripts: generate lock service rpc stubs
* embed: serve lock api
* integration: test grpc lock service
* Update example_key_test.go
* auth: get rid of deadlocking channel passing scheme in simpleTokenTTL
* auth: test concurrent authentication
* test: add coverage for more packages
* v3client: add example and godoc New
* integration: add TestMutexWaitsOnCurrentHolder test
* test: mask go1.8 gosimple warnings
* etcdserver: candidate should wait for applying all configuration changes
* clientv3: close open watch channel if substream is closing on reconnect
* clientv3: synchronize on goroutines in TestBalancerDoNotBlockOnClose
* ctlv3: ensure synced member list before printing env vars on member add
* v3client: fix doc to use e.Server
* clientv3: update eps if pinAddr is not included in updateAddrs
* etcdserver: remove possibly compacted entry look-up
* wal: use path/filepath instead of path
* embed: Clear default initial cluster
* *: use filepath.Join for files
* embed: don't return error when closing on embed etcd
* *: base initial mmap size on quota size
* etcdserver, backend: only warn if exceeding max quota
* e2e: force endpoint for member removal
* ctlv3: have "protobuf" in output help string instead of "proto"
* *: fix gosimple warning for fmt.Sprintf("%s")
* *: use 'io.Seek*' for go1.7+
* etcdserver: remove legacy range/txn
* Dockerfile-release: add nsswitch.conf into image
* e2e, etcdserver: fix wrong usages of ordinal
* backend: add FillPercent option
* etcdmain: handle StopNotify when ErrStopped aborted publish
* integration: ensure 'StopNotify' on publish error
* travis: always 'go get -u' in 'before_install'
* clientv3: wait for Get goroutine in TestDialCancel
* client/integration: use only digits in unix port
* Documentation: add a doc of v3 auth
* clientv3: remove redundant error handling code
* integration: wait on leader before progress check in TestRestartMember
* clientv3: make ops and compares non-opaque and mutable
* namespace: a wrapper for clientv3 to namespace requests
* etcd-2-1-0-bench: Fix an absolute bare link to resource outside of Documentation dir
* clientv3/integration: simple namespace wrapper tests
* integration: test namespacing on proxy layer
* etcdmain: add prefixing support to grpc proxy
* Documentation, op-guide, clientv3: add documentation for namespacing
* clientv3: use waitgroup to wait for substream goroutine teardown
* adt: Visit() interval trees in sorted order and terminate early
* *: revoke a deleted role
* e2e: add a test case role delete and revoke
* auth, etcdserver: forbid invalid auth management
* e2e: add a test case for invalid management of root user and role
* Documentation: add Prometheus alerting rules
* mvcc/backend: hold 'readTx.Lock' until completing bolt.Tx reset
* integration: test inflight range requests while defragmenting
* tools/etcd-tester: add timeout for 'defrag'
* Documentation: add salesforce to prod users
* integration: retry TestNetworkPartition5MembersLeaderInMajority
* auth: store cached permission information in a form of interval tree
* test: add proxy to coverage tests
* etcdserver: fix a typo in bucket name var
* raft: use rs.req.Entries[0].Data as the key for deletion in advance()
* op-guide: Remove guest role from v3 auth doc
* integration: add serialized range to TestV3CompactCurrentRev
* grpcproxy/cache: only check compaction revision for historical revisions
* testutil: check for grpc resources in AfterTest
* auth: import design doc
* NEWS: add v3.1.4, v3.1.5
* proxy/grpcproxy: add chanStream helper
* doc: link auth design in doc
* etcdctl: add initial check perf command
* grpcproxy/adapter: add maintenance API support
* compactor: make TestPeriodic die early
* clientv3,v3client: maintenance to embedded client
* integration: use maintenance API adapter in tests
* Documentation: add disk latency leader loss question to FAQ
* Documentation: fix typos
* *: use protoc 3.2.0
* compactor: fix TestPeriodic
* embed: Delay setting initial cluster for YAML
* etcdmain: test config file clustering flags
* integration: test require leader for a lease stream
* v3rpc: return leader loss error if lease stream is canceled
* clientv3/integration: test lease WithRequireLeader
* clientv3: support WithRequireLeader in lease client
* Documentation: add encryption wrapper to integrations
* clientv3: respect dial timeout when authenticating
* clientv3: test dial timeout is respected when using auth
* etcdserver: use cancelable context for server initiated requests
* integration: test cluster terminates quickly
* idgen: correct comments for id generator
* Documentation: Adding new Ruby v3 client entry to integrations.md
* Documentation: add dims v3 gateway API for python
* clientv3: fix go1.8 go fmt warning in test
* *: support checking that an interval tree's keys cover an entire interval
* *: add pprof flag to grpc proxy
* etcdctl: add a new option --from-key for unlimited range permission
* e2e: add a test case for the --open-ended option
* grpcproxy/adapter: add Cluster API support
* clientv3,v3client: add cluster embedded client
* clientv3: remove unused fields from 'auth'
* pkg/transport: remove port in Certificate.IPAddresses
* integration: use cluster adapter in tests
* test: generate coverage report even if some tests fail
* auth: use atomic access to 'authStore.revision'
* Docs: replace absolute links with relative ones.
* lease: acquire BatchTx lock in fakeDeleter
* auth, adt: introduce a new type BytesAffineComparable
* *: fix a bug in handling unix socket urls
* clientv3/yaml: use TLS 1.2 in min version
* clientv3: register waitCancelSubstreams closingc goroutine with waitgroup
* ctlv3: add '--debug' flag (to enable grpclog)
* etcdmain: support SRV discovery for gRPC proxy
* clientv3/integration: fix minor typo in Fatalf
* test: fix fmt pass and shorten suppression warnings
* *: remove os.Kill from signal.Notify
* netutil: fix unused err staticcheck failure
* vendor: upgrade grpc to 1.2.1
* vendor: upgrade grpc-gateway to v1.2.0
* concurrency: expose leader revision and proclaim headers for election
* concurrency: return v3.GetResponse for Election.Leader()
* concurrency: only delete on election resignation if create revision matches
* concurrency: support resuming elections if leadership already held
* concurrency: don't skip leader updates in Observe()
* v3rpc: force RangeEnd=nil if length is 0
* scripts: update genproto.sh to include v3election
* v3election: Election RPC service
* integration: v3 election rpc tests
* embed: add Election service
* etcd-runner: update election command to use new Leader() interface
* Documentation: Adds AWS platform guide
* test: remove generated files from coverage statistics
* *: add swagger and grpc-gateway assets for v3lock and v3election
* embed: register grpc-gateway endpoints for v3lock and v3election
* test: ignore v3electionpb and v3lockpb for static checks
* rafthttp: move test-only functions to '_test.go'
* benchmark: add txn-put benchmark
* vendor: update 'golang.org/x/net'
* *: coreos/rkt -> rkt/rkt
* Documentation/learning: finish why.md
* Documentation: Add Hosted Graphite to prod users
* *: rename Snapshot STM isolation to SerializableSnapshot
* Documentation: add missing link
* integration: test requests with valid auth token but disabled auth
* auth: protect simpleToken with single mutex and check if enabled
* *: deny incoming peer certs with wrong IP SAN
* transport: use actual certs for listener tests
* tools/benchmark: fix misc gofmt warnings
* test: do not ignore 'tools/benchmark/cmd'
* Documentation: reshuffle op-guide to include platforms and upgrading
* *: return updated member list in v3 rpcs
* report: add test for Report interface
* discovery: remove dead token argument from SRVGetCluster
* clientv3: let client.Dial() dial endpoints not in the balancer
* integration: test client can dial endpoints not in balancer
* etcdserver: let Status() not require authentication
* Documentation: Adding a separate v2 and a v3 API binding for C++
* embed: remove ReadTimeout TODO
* pkg/transport: add 'IsClosedConnError'
* rafthttp: use 'transport.IsClosedConnError'
* clientv3/integration: use 'transport.IsClosedConnError'
* etcdserver: wait apply on conf change Raft entry
* etcdctl: show responses of auth RPCs if --write-output=fields is passed
* auth: fix race on stopping simple token keeper
* clientv3/namespace: fix incorrect watching prefix-end
* clientv3/integration: test fetching entire keyspace
* clientv3: translate WithPrefix() into WithFromKey() for empty key
* benchmark: a new flag --target-leader for targetting a leader endpoint
* op-guide: add command for checking if there's any v3 data
* etcdmain: trigger embed.Etcd.Close for OS interrupt
* embed: gracefully shut down gRPC server
* integration: test 'inflight' range requests
* Revert "mvcc: test inflight Hash to trigger Size on nil db"
* mvcc/backend: remove t.tx.DB()==nil checks with GracefulStop
* mvcc: remove stopc select case in Hash
* etcdserver: fill-in Auth API Header in apply layer
* integration: test auth API response header revision
* vendor: update gopkg.in/yaml.v2 to reflect current license
* *: add bill of materials
* clientv3/integration: add 'TestUserErrorAuth'
* travis: bump up to Go 1.8.1
* integration: use 'time.Until' in Go 1.8
* *: use '*tls.Config.Clone' in Go 1.8
* raft: Avoid holding unneeded memory in unstable log's entries array
* etcdserver: initialize raftNode with constructor
* NEWS: update v3.1.6
* pkg/debugutil: add 'mutex' profiler (Go 1.8+)
* embed: use '*url.URL.Hostname(),Port()' for Go 1.8
* transport: resolve DNSNames when SAN checking
* embed: signal 'grpcServerC' before cmux serve
* *: simply ignore ErrAuthNotEnabled in clientv3 if auth is not enabled
* clientv3/integration: sleep less in TestLeaseRenewLostQuorum
* etcdserver: remove 2.0 StatusNotFound version check
* ctlv3: keep lease as integer in fields printer
* scripts: move gateway stubs into gw/ packages
* *: put gateway stubs into their own packages
* test: ensure clientv3 has no grpc-gateway dependency
* ctlv3: use printer for lease command results
* vendor: update 'golang.org/x/time/rate' with context
* vendor: use 'x/net/trace' with std 'context'
* netutil: use "context" and ctx-ize TCP addr resolution
* build-binary: Add arm64
* build-aci: Add multi arch support
* build-docker: Updates for multi-arch release
* release: Add multi arch support
* release.md: Update for multi arch release
* *: clear redundant return statement warnings (S1027)
* integration: add pause/unpause to client bridge
* clientv3/integration: test watch resume with disconnect before first event
* clientv3: only update initReq.rev == 0 with creation watch revision
* v2http: remove deprecated /v2/machines path
* integration: permit dropping intermediate leader values on observe
* concurrency: clarify Observe semantics; only fetches subsequence
* clientv3: set current revision to create rev regardless of CreateNotify
* testutil: add assert functions
* store: replace testify asserts with testutil asserts
* scripts: remove testify hack in updatedep
* vendor: remove testify
* clientv3: don't halt lease client if there is a lease error
* concurrency: use new lease interface in session
* clientv3/integration: use new interfaces in lease tests
* etcdcdtl: use new lease interface
* grpcproxy: use new lease interface
* etcd-runner: update to use new lease interface
* benchmark: use new lease interface
* integration: close proxy's lease client
* etcd-runner: move root cmd into command package
* etcdserver: ensure waitForApply sync with applyAll
* etcdserver: do not block on raft stopping
* etcd-runner: add rate limiting in doRounds()
* etcd-runner: add barrier, observe !ok handling, and election name arg to election-runner.
* etcd-runner: add lease ttl as a flag and fatal when err in lease-runner.
* etcd-runner: pass in lock name as a command arg for lock_racer.
* etcd-runner: add --prefix flag, allows inf round, and minor vars refactoring in watch runner.
* etcd-runner: integrate etcd runner in to etcd tester
* v3client: wrap watch ctxs with blank ctx
* Documentation: require Go 1.8+ for build
* integration: test Observe can read leaders set prior to compaction
* concurrency: use current revisions for election
* integration/fixtures: add expired certs
* clientv3/integration: test client dial with expired certs
* test: bill of materials check pass
* vendor: revendor speakeasy to include unix license file
* travis: add bill-of-materials checking
* raft: Set the RecentActive flag for newly added nodes
* pkg/transport: reload TLS certificates for every client requests
* pkg/wait: add comment and make List private
* integration: test TLS reload
* Documentation: add upgrade to 3.2 doc
* integration: match more TLS errors for wrong certs
* version: bump up to 3.2.0-rc.0
* version: bump up to 3.2.0-rc.0+git
* Documentation/v2: pin docker guide to use latest 2.3.x
* Documentation: add documentation for single node docker etcd
* scripts: annotate with acbuild with supports-systemd-notify
* embed: fix blocking Close before gRPC server start
* Revert "Merge pull request #7732 from heyitsanthony/lease-err-ka"
* Documentation/upgrades: revert KeepAlive interface change
* add chain core to raft users list
* integration: ensure revoke completes before TimeToLive
* etcdserver: apply() sets consistIndex for any entry type
* clientv3: don't race on upc/downc/switch endpoints in balancer
* integration: close accepted connection on stopc path
* etcdserver: add a test to ensure config change also update ConsistIndex
* concurrency: provide old STM functions as deprecated
* integration: clean up TLS reload tests, fix no-file while renaming
* integration: close proxy's lease client
* clientv3/integration: drain keepalives before waiting for leader loss
* Documentation/v2: fix broken links
* Documentation/v3: fix broken links
* *: fix other broken links in markdown
* integration/fixtures-expired: do not force 'rm'
* scripts,travis: install 'marker' for CI tests
* test: run 'marker' to find broken links
* Documentation: remove '[]' from '[DEPRECATED]'
* compactor: Make periodic compactor runs every hour
* raft: Add unit test TestAddNodeCheckQuorum
* backend: print snapshotting duration warning every 30s
* pkg/srv: package for SRV utilities
* clientv3: check IsModify
* backend: add prometheus metric for large snapshot duration.
* README: use the same tagline from github
* embed: gracefully close peer handlers on shutdown
* etcdmain, tcpproxy: srv-priority policy
* clientv3: Do no stop keep alive loop by server side errors
* scripts: add 'BOM' update script
* v3rpc: remove duplicated error case for lease.ErrLeaseNotFound
* etcdserver: renaming db happens after snapshot persists to wal and snap files
* etcdserver: add a test to ensure renaming db happens before persisting wal and snap files
* etcd-runner: remove mutex on validate() and release() in global.go
* etcd-runner: fix race on nextc
* grpcproxy, etcdmain: add lock and election services to proxy
* adpater: adapters for lock and election services
* integration: add lock and election services to proxy tests
* pkg/srv: fix error checks from resolveTCPAddr
* clientv3: remove duplicate documentation for Do()
* snap, etcdserver: tighten up snapshot path handling
* backend: dynamically set snapshotWarningTimeout based on db size
* faq: explains "snapshotting is taking more..." warning
* expect: reload DEBUG_EXPECT for each process
* etcd-agent: store failure_archive in log dir
* functional-tester: use log-dir as data-dir in etcd-agent
* e2e: more debugging output for lock and elect etcdctl tests
* integration: reset default logging level in TestRestartRemoved
* osutil: force SIG_DFL before resending terminating signal
* backend: force initial mmap size to 0 for windows
* *: remove unnecessary fmt.Sprint
* pkg/osutil: fix missing 'syscall' import
* benchmark: add rpc locks to stm benchmark
* benchmark: add rate limiting to stm
* travis: test builds in other OSes
* bridge: add tx-delay and rx-delay
* e2e: Stop() lock/elect etcdctl process if Close times out
* tcpproxy: display endpoints, not pointers, in ready to proxy string
* etcdserver: more logging on snapshot close path
* report: add NewWeightedReport
* op-guide: remove alpha from grpc proxy
* *: fill out blank package godocs
* etcd-tester: use 'debugutil.PProfHandlers'
* etcd-tester: add '-failpoints' to configure gofail
* *: remove unused, fix typos
* integration: bump up 'TestV3LeaseRequireLeader' timeout to 5-sec
* version: bump up to 3.2.0-rc.1
* version: bump up to 3.2.0-rc.1+git
* ctlv3: add --prefix support to role revoke-permission, cleanup role flag handling
* etcdctl: sync README with etcdctl role command, add prefix example, fix typo
* Documentation, scripts: regenerate protobuf docs with updated protodoc
* clientv3, etcdserver: support auth in Watch()
* e2e: add a new test case for protecting watch with auth
* Documentation/learning: fixed typo
* etcdserver: close mvcc.KV on init error path
* Documentation: add systemd, Container Linux guide
* doc: modify usecase
* benchmark: support multiple clients/conns in watch-latency benchmark
* travis: run tests with Go 1.8.3
* test: release tests with v3.2+
* ROADMAP: make 'release-3.2' stable branch
* e2e: use version.Cluster for release test
* etcdctl: support exec on lock
* Documentation: add FAQ entry for "database space exceeded" errors
* Documentation: add 'yaml.NewConfig' change in 3.2
* vendor: use v0.2.0 of go-semver
* op-guide: update performance.md
* vendor: kr/pty v1.0.0
* vendor: ghodss/yaml v1.0.0
* clientv3: use Endpoints[0] to initialize grpc creds
* clientv3/integration: test dialing to TLS without a TLS config times out
* clientv3: support unixs:// scheme
* integration: use unixs:// if client port configured for tls
* mvcc: chunk reads for restoring
* mvcc: time restore in restore benchmark
* op-guide: document configuration flags for gateway
* Documentation, scripts: regen RPC docs
* scripts, Documentation: fix swagger generation
* op-guide: document CN certs in security.md
* test: speedup and strengthen go vet checking
* *: fix go tool vet -all -shadow errors
* Documentation/op-guide: fix typo in grafana.json
* test, osutil: disable setting SIG_DFL on linux if built with cov tag
* test: shellcheck
* travis: add shellcheck
* *: clear rarer shellcheck errors on scripts
* fileutil: return immediately if preallocating 0 bytes
* Documentation/op-guide: fix 'grpc_code' field in metrics
* etcdserver: add leaseExpired debugging metrics
* v2http: put back /v2/machines and mark as non-deprecated
* Documentation/op-guide: do not use host network, fix indentation
* integration: test txn comparison and concurrent put ordering
* mvcc: create TxnWrites from TxnRead with NewReadOnlyTxnWrite
* etcdserver: use same ReadView for read-only txns
* rafthttp: permit very large v2 snapshots
* version: bump up to 3.2.0
* version: bump up to 3.2.0+git
* Documentation/upgrades: link to previous guides
* build-aci: Fix ACI image name
* bill-of-materials: regenerate with multi licenses
* Documentation/op-guide: fix failed RPC rate, leader election metrics
* test: 'FAIL' on release binary download failure
* e2e: test txn over grpc json
* dev-guide: add txn json example
* v3rpc: treat nil txn request op as error
* integration: test mvcc db size metric is set on restore
* mvcc: set db size metric on restore
* mvcc: test restore and deletes with small chunk sizes
* mvcc: restore into tree index with one key index
* etcd-tester: add 'exit-on-failure'
* test: run basic functional tests
* integration: test mvcc db size metric is updated following defrag
* mvcc: use GaugeFunc metric to load db size when requested
* version: bump up to 3.2.1
* version: bump up to v3.2.1+git
* lease: rate limit revoke runLoop
* lessor: extend leases on promote if expires will be rate limited
* benchmark: refactor watch benchmark
* Documentation/v2: 'etcd v2' to the title
* Documentation/faq: fix typo in flag names
* lease: stop lessors after tests
* fixtures: add gencerts.sh, generate CRL
* embed: share grpc connection for grpc json services
* embed: connect json gateway with user-provided listen address
* transport: accept connection if matched IP SAN but no DNS match
* dev-guide: update experimental APIs
* version: bump up to 3.2.2
* version: bump up to 3.2.2+git
* Documentation: refer to LeaseKeepAliveRequest for lease refresh
* dev-guide: document using range_end for prefixes with json
* v3rpc: Let clients establish unlimited streams
* test: sync with etcd-agent start in functional_pass
* testutil: whitelist WaitGroup.Done
* version: bump up to 3.2.3
* version: bump up to 3.2.3+git
* embed: wait up to request timeout for pending RPCs when closing
* integration: test embed.Etcd.Close with watch
* grpcproxy: return nil on receiving snapshot EOF
* version: bump up to 3.2.4
-------------------------------------------------------------------
Wed May 24 11:24:14 UTC 2017 - opensuse-packaging@opensuse.org
- Update to version 3.1.8:
* version: bump up to 3.1.7+git
* Docs: replace absolute links with relative ones.
* etcd-2-1-0-bench: Fix an absolute bare link to resource outside of Documentation dir
* etcdserver: apply() sets consistIndex for any entry type
* integration: close accepted connection on stopc path
* Documentation/v2: fix broken links
* Documentation/v3: fix broken links
* *: fix other broken links in markdown
* version: bump up to 3.1.8
-------------------------------------------------------------------
Fri May 19 16:18:42 UTC 2017 - opensuse-packaging@opensuse.org
- Update to version 3.1.7:
* integration: test auth API response header revision
* ctlv3: keep lease as integer in fields printer
* version: bump up to 3.1.6
* version: bump up to 3.1.6+git
* ctlv3: use printer for lease command results
* clientv3: only update initReq.rev == 0 with creation watch revision
* clientv3/integration: test watch resume with disconnect before first event
* integration: add pause/unpause to client bridge
* clientv3: set current revision to create rev regardless of CreateNotify
* version: bump up to 3.1.7
-------------------------------------------------------------------
Thu Apr 13 10:01:12 UTC 2017 - jmassaguerpla@suse.com
- Fix etcd build. We are generating 2 binaries, etcd and etcdctl.
They need to be built separately
-------------------------------------------------------------------
Thu Feb 23 10:03:29 UTC 2017 - fcastelli@suse.com
- Ensure /var/lib/etcd is controlled by etcd:etcd
-------------------------------------------------------------------
Tue Jan 24 12:23:46 UTC 2017 - jmassaguerpla@suse.com
- exclude i586. We don't expect this package to be built on i586.
-------------------------------------------------------------------
Mon Jan 23 14:24:08 UTC 2017 - jmassaguerpla@suse.com
- remove sysconfig.etcd: this file is not being used
-------------------------------------------------------------------
Mon Jan 23 12:40:16 UTC 2017 - opensuse-packaging@opensuse.org
- Update to version 3.1.0:
* raft: add node should reset the pendingConf state
* v3rpc: don't close watcher if client closes send
* e2e: add test for v3 watch over grpc gateway
* mvcc: remove unused restore method
* integration: don't expect recv to stop on CloseSend in waitResponse
* Documentation: add grpc gateway watch example
* version: bump up v3.1.0-rc.1+git
* discovery: warn on scheme mismatch
* grpcproxy: fix deadlock on watch broadcasts stop
* etcdmain: add '/metrics' HTTP/1 path to grpc-proxy
* etcd-tester: do not resolve localhost
* raftexample: confState should be saved after apply
* raft: test case to check the duplicate add node propose
* raft: fix test case, should wait config propose applied
* raft: fix test case for data race
* raft: use the channel instead of sleep to make test case reliable
* raft: fix TestNodeProposeAddDuplicateNode
* etcdmain: handle TLS in grpc-proxy listener
* etcd-tester:limit max retry backoff delay
* functional-tester: add withBlock() to grpc dial
* op-guide: add notes about Prometheus data source in Grafana
* clientv3: return copy of endpoints, not pointer
* auth: add a timeout mechanism to simple token
* client: update README about health monitoring
* grpcproxy: fix race between watch ranges delete() and broadcasts empty()
* lease: Use monotonic time in lease
* integration: use Range to wait for reboot in quota tests
* grpcproxy: fix race between coalesce and bcast on nextrev
* etcd-tester: refactor lease checker
* store: check sorted order in TestStoreGetSorted
* vendor: bump go-systemd to v14 to avoid build error
* integration: cancel Watch when TestV3WatchWithPrevKV exits
* grpcproxy: add richer metrics for watch
* grpcproxy: add cache related metrics
* raft: Fix election "logs converge" test
* raft: Export Progress.IsPaused
* benchmark: add rate limit
* etcdctl: remove GetUser check before mutable commands
* grpcproxy: lock store when getting size
* Documentation: link added to libraries-and-tools.md with a new v2 Scala Client
* grpcproxy: fix deadlock in watchbroadcast
* etcdserver: time out when readStateC is blocking
* store: fix store_test.go comments
* vendor: update ugorji/go
* client: update generated ugorji codec
* doc: initial faq
* clientv3/integration: test lease keepalive works following quorum loss
* integration: use RequireLeader for TestV3LeaseFailover
* v3rpc, etcdserver, leasehttp: ctxize Renew with request timeout
* Documentation: add blox and chain as users
* etcdserver: do not send v2 sync if ttl keys do not exist
* ROADMAP: update for 3.2
* Documentation: add more FAQ questions
* grpcproxy: fix minor typo
* vendor: use versions when possible in glide.yaml
* scripts: use glide update if repo exists in glide.lock
* github: make bug reporting link non-relative
* github: make contribution link non-relative
* Documentation: update get examples to be clearer about ranges
* etcdserver, embed, v2http: move pprof setup to embed
* doc: add faq about apply warning logging
* test: exclude '_home' for gosimple, unused
* auth: fix gosimple errors
* integration: simplify boolean comparison in resp.Created
* raft: simplify boolean comparison, remove unused
* tools: simplify boolean comparison, remove unused
* e2e: remove unused 'ctlV3GetFailPerm'
* v3rpc: remove unused 'splitMethodName' function
* grpcproxy: remove unused field 'wbs *watchBroadcasts'
* doc: add faq about missing heartbeat
* etcdctl: "fields" output formats
* build: remove dir use -r flag
* etcd-tester: add 'enable-pprof' option
* etcd-tester: cancel lease stream; fix OOM panic
* doc: add hardware section
* auth: improve 'removeSubsetRangePerms' to O(n)
* Documentation: use port 2379 in local cluster guide The port in endpoints should be 2379, instead of 12379.
* op-guide/clustering: fix typo
* embed: deep copy user handlers
* Documentation: add more FAQs (follower, leader, sys-require)
* clientv3: close Lease on client Close
* netutil: ctx-ize URLStringsEqual
* etcdserver: retry for 30s on advertise url check
* membership: retry for 30s on advertise url check
* clientv3: return error from KeepAlive if corresponding loop exits
* clientv3: add test for keep alive loop exit case
* auth, etcdserver: protect membership change operations with auth
* e2e: test cases of protecting membership change with auth
* clientv3: better error message for keep alive loop halt
* Documentation: FAQ entry for cluster ID mismatches
* dev-guide: add limit.md
* Documentation: minor fix nodes -> node
* etcdctl: warn when backend takes too long to open on migrate
* docs: explicitly set ETCDCTL_API=3 in recovery.md
* v3api, rpctypes: add ErrTimeoutDueToConnectionLost
* clientv3/integration: test lease grant/keepalive with/without failures
* clientv3: don't reset keepalive stream on grant failure
* etcdctl: tighten up output, reorganize README.md
* Documentation: add FAQs on membership operation
* Documentation: add 'why.md'
* embed: only override default advertised client URL if the client listen URL is 0.0.0.0
* raft: make memory storage set method thread safe
* raft: resume paused followers on receipt of MsgHeartbeatResp
* etcd-tester: fix typo, add endpoint in logs
* lease: force leader to apply its pending committed index for lease operations
* leasehttp: buffer error channel to prevent goroutine leak
* raft: fix pre-vote tests
* etcdserver: rework update committed index logic
* etcd-tester: remove unused err var from maxRev
* e2e: check etcdctl endpoint health is healthy if denied permission to key
* benchmark: a new option for configuring dial timeout
* ctlv3: consider permission denied error to be healthy for endpoints
* etcdmain: add --metrics flag for exposing histogram metrics
* e2e: test cluster-health
* v2http: submit QGET in health endpoint if no progress
* test: bump grpcproxy pass timeout to 15m
* lease: use atomics for accessing lease expiry
* e2e: poll '/version' in release upgrade tests
* e2e: unset ETCDCTL_API env var before running u2e tests
* etcdserver: consistent naming in raftReadyHandler
* coverage: rework code coverage for unit and integration tests
* testutil: whitelist thread created by go cover
* rafthttp: bump up timeout in pipeline test
* grpcproxy, etcdmain, integration: return done channel with WatchServer
* integration: defer clus.Terminate in watch tests
* raftexample: load snapshot when opening WAL
* etcd-runner: make command compliant
* raft: use status to test node stop
* etcdserver: expose ErrNotEnoughStartedMembers
* etcdserver: resume compactor only if leader
* benchmark: enable grpc error logging on stderr
* etcd-runner:add flags in watcher for hardcoded values
* docs: fix recovery example in recovery.md
* auth: use quorum get for GetUser/GetRole for mutable operations
* grpcproxy: tear down watch when client context is done
* integration: use only digits in unix ports
* e2e: dump stack on ctlTest timeout
* expect: EXPECT_DEBUG environment variable
* why: add origin of the term etcd
* testutil: increase size of buffer for stack dump
* raft: fix test case for #7042
* vendor: update ugorji/go
* integration: add grpc auth testing
* auth: reject empty user name when checking op permissions
* etcdctl: create root role on auth enable if it does not yet exist
* raft: add RawNode test case for #6866
* pkg/report: support 99.9-percentile, change column name
* documentation: display docs.md in github browser
* benchmark: option to rate limit range benchmark
* etcdserver, clientv3: handle a case of expired auth token
* tools: Add etcd 3.0 load test tool refernece
* transport: warn on user-provided CA
* NEWS: add v3.1.0, v3.0.16 + minor fixes
* clienv3: fix balancer test logic
* clientv3: don't reset stream on keepaliveonce or revoke failure
* grpcproxy: use ccache for key cache
* vendor: remove groupcache, add ccache
* pkg/report: add 'Stats' to expose report raw data
* travis: use Go 1.7.4, drop old env var
* ctlv3: print cluster info after adding new member
* Documentation: document upgrading to v3.1
* pkg/report: add nil checking for getTimeSeries
* etcdserver: use ReqTimeout for linearized read
* grpcproxy, etcdmain, integration: add close channel to kv proxy
* glide: update 'golang.org/x/net'
* vendor: update 'golang.org/x/net'
* Documentation: update experimental_apis for v3.1 release
* NEWS: fix date for v3.1 release
* Documentation: fix typo s/endpoint-health/endpoint health/
* clientv3/concurrency: fix rev comparison on concurrent key deletion
* integration: test STM apply on concurrent deletion
* pkg/flags: fixed prefix checking of the env variables
* etcdctlv3: snapshot restore works with lease key
* test: passed the test script arguments as the test function parameters
* documentation: update build documentation
* version: bump to v3.1.0
-------------------------------------------------------------------
Thu Jan 12 11:06:41 UTC 2017 - opensuse-packaging@opensuse.org
- Update to version 3.1.0rc.1:
* grpcproxy: watch next revision should be start revision when not 0
* grpcproxy: copy range request before storing in cache
* raft: return empty status if node is stopped
* mvcc: store.restore taking too long triggering snapshot cycle fix
* mvcc: TestStoreRestore fix
* mvcc : Added benchmark for store.resotre
* pkg/netutil: get default interface for tc commands
* version: bump up v3.1.0-rc.1
-------------------------------------------------------------------
Wed Sep 14 09:55:08 UTC 2016 - opensuse-packaging@opensuse.org
Updated to version 3.0.8
- Bug fixes
- GH6325: etcdctl: fix quotes in txn and watch
- GH6344: etcdctl/ctlv3: don't crash when we should prompt for pw
- GH6365: embed: reject domain names before binding
- GH6370: etcdctl: restore should create a snapshot
- GH6381: wal: fsync directory after wal file rename
- GH6253: discovery: reject IP address records in SRVGetCluster
- GH6267: wal: fix CRC corruption on writes following write tears
- GH6269: wal: On non-Windows OS, hold file lock while renaming WAL directory
- GH6284: clientv3/concurrency: fix unintended deadlock on key prefixes
- GH6309: etcdserver: allow zero kv index for cluster upgrade
- GH6310: wal: use page buffered writer for writing records
- GH6098: recover lessor before recovering mvcc store and transactionally revoke leases
- GH6175: rafthttp: fix race between streamReader.stop() and connection closer
- GH6226: vendor: update grpc/grpc-go for clientconn patch (grpc/grpc-go#842)
- GH5845: clientv3: respect up/down notifications from grpc
- GH6077: v2http: use guest access in non-TLS mode
- GH6136: clientv3: close watcher stream once all watchers detach
- GH6142: clientv3: handle watchGrpcStream shutdown if prior to goroutine start
- GH6152: mvcc: fix count
- GH6166: clientv3: support non-blocking New()
- GH6222: integration: NewClusterV3() should launch cluster before creating clients
- Security changes
- GH6084: etcdctl: set TLS servername on discovery
- Other changes
- GH6218: vendor: boltdb/bolt v1.3.0 for Go 1.7
-------------------------------------------------------------------
Mon Aug 08 14:57:34 UTC 2016 - opensuse-packaging@opensuse.org
- Update to version 3.0.4:
+ etcdmain: correctly check return values from SdNotify()
+ etcdserverpb: add missing deleterange annotation
+ scripts:genproto.sh: update grpc-gateway
+ *: regenerate proto
+ Documentation: fix links in upgrades
+ etcdserver, api, membership: don't race on setting version
+ Dockerfile-release: add '/var/lib/etcd/'
+ scripts/genproto: use latest grpc-gateway c8ec92d0
+ *: regenerate proto files for grpc-gateway
+ version: bump to v3.0.4
-------------------------------------------------------------------
Tue Jul 26 11:03:39 UTC 2016 - msabate@suse.com
- Fixed the path on systemd's environment file
-------------------------------------------------------------------
Wed Jul 13 15:27:10 UTC 2016 - pjanouch@suse.de
- spec-cleaner clean ups
- change PreReq: %fillup_prereq to Requires(post)
- Require systemd-rpm-macros instead of the entire systemd
- call %service_add_pre after instead of before creating
the user and group
-------------------------------------------------------------------
Thu Jul 7 12:48:21 UTC 2016 - tboerger@suse.com
- Dropped rpmlintrc
- Refactoring of the spec based on golang-packaging
-------------------------------------------------------------------
Tue Jul 05 09:19:27 UTC 2016 - opensuse-packaging@opensuse.org
- Update to version 3.0.1:
* version: bump to v3.0.0+git
* release: fix Dockerfile etcd binary paths
* etcdserver: exit on missing backend only if semver is >= 3.0.0
* Documentation: fix typo in api_grpc_gateway.md
* *: test, docs with go1.6+
* version: bump to v3.0.1
-------------------------------------------------------------------
Tue Jul 05 09:13:32 UTC 2016 - opensuse-packaging@opensuse.org
- Update to version 3.0.0:
* mvcc: do not hash consistent index
* benchmark: fix Compact request
* clientv3: only use closeErr on watch when donec is closed
* ctlv3: make flags, commands formats consistent
* Doc: fix typo in dev-guide.md
* hack: add tls-setup example generated certs to gitignore
* hack: install goreman in tls-setup example
* *: remove beta from docs
* version: bump to v3.0.0
-------------------------------------------------------------------
Wed Jun 22 07:49:26 UTC 2016 - opensuse-packaging@opensuse.org
- Update to version 2.3.7:
+ etcdsever: fix the leaky snashot routine issue
+ etcdserver: stop raft after stopping apply scheduler
+ etcdserver: wait for snapshots before closing raft
+ version: bump to v2.3.5
+ version: bump to v2.3.5+git
+ etcd: fix refresh feature
+ version: bump to v2.3.6
+ version: bump to v2.3.6+git
+ store: copy old value when refresh + cas
+ version: bump to v2.3.7
-------------------------------------------------------------------
Mon May 30 14:21:25 UTC 2016 - opensuse-packaging@opensuse.org
- Update to version 2.3.6:
+ raft: do not panic when removing all the nodes from cluster
+ Documentation/v2: fix auth_api.md bug
+ Documentation/v2: fix typo for updating a member
+ etcdsever: fix the leaky snashot routine issue
+ etcdserver: stop raft after stopping apply scheduler
+ etcdserver: wait for snapshots before closing raft
+ version: bump to v2.3.5
+ version: bump to v2.3.5+git
+ etcd: fix refresh feature
+ version: bump to v2.3.6
-------------------------------------------------------------------
Wed May 18 08:50:26 UTC 2016 - opensuse-packaging@opensuse.org
- Update to version 2.3.4:
+ *: bump to v2.3.2
+ *: bump to v2.3.2+git
+ etcdserver/auth: check empty password in merge
+ *: bump to v2.3.3
+ *: bump to v2.3.3+git
+ httpproxy: fix race on getting close notifier channel
+ etcdctl/ctlv2: total-timeout for Sync
+ etcdctl: Add --wal-dir and --backup-wal-dir options to backup command.
+ README: add known bugs
+ version: bump to v2.3.4
-------------------------------------------------------------------
Tue Apr 26 19:08:05 UTC 2016 - fcastelli@suse.com
- Update to version 2.3.2:
+ client: return original ctx error
+ etcdmain: start on unsupported arch when ETCD_UNSUPPORTED_ARCH is set
+ etcdctl: print grant/revoke error instead of scanning roles for changes
+ e2e: test etcdctl v2 double user grant
+ client: accept roles in response for ListUser
+ e2e: test etcdtl user list on root user
+ etcdserver: close response body when getting cluster information
-------------------------------------------------------------------
Fri Apr 15 10:21:49 UTC 2016 - normand@linux.vnet.ibm.com
- to complete previous update
* remove etcd_add_bolt_ppc64.patch
* add shadow as BuildRequires
-------------------------------------------------------------------
Fri Mar 18 22:40:43 UTC 2016 - fcastelli@suse.com
- Update to version 2.3.0:
* Strict runtime reconfiguration check
* Runtime profiling
* Refreshing TTL keys
* Experimental v3 support
- Cleanup configuration handling
-------------------------------------------------------------------
Wed Feb 17 14:45:13 UTC 2016 - normand@linux.vnet.ibm.com
- new etcd_add_bolt_ppc64.patch
-------------------------------------------------------------------
Tue Dec 22 16:05:44 UTC 2015 - fcastelli@suse.com
- Remove obsolete ports from firewall configuration
-------------------------------------------------------------------
Tue Dec 22 14:47:03 UTC 2015 - fcastelli@suse.com
- Remove useless build warnings and errors
- Fix building
-------------------------------------------------------------------
Tue Dec 22 12:52:41 UTC 2015 - fcastelli@suse.com
- Remove obsolete files
- Fix systemd's unit to take into consideration the sysconfig
environment file
-------------------------------------------------------------------
Tue Dec 22 10:32:57 UTC 2015 - fcastelli@suse.com
- Fix typo inside of spec file, remove reference to docker
-------------------------------------------------------------------
Tue Dec 22 09:11:27 UTC 2015 - fcastelli@suse.com
- Update to version 2.2.2:
* fix health check result in etcdctl cluster-health
* generate v5 ugorji/go/codec unmarshal code in client package
* fix unset SYSLOG_IDENTIFIER when etcd is logging to the journal
* improve logging when discovery procedure fails
* fix various data races detected by race detector
* fix rejecting to modify pre-defined guest role
- Changes introduced by version 2.2.1:
* support Nodes type in client package for sorting
* improve panic logging output when starting etcd with corrupted data dir
* fix non-customizable request timeout in etcdctl
* improve output when missing initial flags
* improve output when retrying unavailable endpoint in proxy
* etcd no longer hangs forever when fails to finish discovery
* fix Content-Type header for version API
* improve logging output when systemd notify fails
* support literal IPv6 address with zone in URL flags
* update dependency for bug fix and restorable dependency list
* fix mk command in etcdctl
-------------------------------------------------------------------
Fri Feb 6 15:44:34 UTC 2015 - fcastelli@suse.com
- Update to version 2.0.0:
* Internal etcd protocol improvements to guard against accidental misconfiguration
* etcdctl backup was added to make recovering from cluster failure easier
* etcdctl member list/add/remove commands for easily managing a cluster
* On-disk datastore safety improvements with CRC checksums and append-only behavior
* An improved Raft consensus implementation already used in other projects like CockroachDB
* More rigorous and faster running tests of the underlying Raft implementation, covering all state machine and cases explained in the original Raft white paper in 1.5 seconds
* Additional administrator focused documentation explaining common scenarios
* Official IANA assigned ports for etcd TCP 2379/2380
-------------------------------------------------------------------
Mon Oct 20 10:43:21 UTC 2014 - fcastelli@suse.com
- Updated default configuration file
-------------------------------------------------------------------
Mon Oct 20 10:18:30 UTC 2014 - fcastelli@suse.com
- Fixed permissions of etcd binary
-------------------------------------------------------------------
Mon Oct 20 08:26:34 UTC 2014 - fcastelli@suse.com
- Created initial version 0.4.6