14781 Commits

Author SHA1 Message Date
caoming
9668536124 raft: add a test case in TestStorageAppend 2018-11-15 16:41:36 +08:00
Gyuho Lee
ee9dcbca0d
Merge pull request #10256 from philippgille/patch-1
Fix spelling in comment
2018-11-12 14:07:05 -08:00
Philipp Gillé
0cfc01b873 clientv3: Fix spelling in comment 2018-11-12 22:33:48 +01:00
Gyuho Lee
ae25c5e132
Merge pull request #10253 from mas9612/improve-docs
*: fix some typo and repo name
2018-11-11 11:41:57 -08:00
mas9612
9ee41f699c doc: fix typo in documentation 2018-11-11 23:27:04 +09:00
mas9612
963d76fc4c CONTRIBUTING: fix repo name 2018-11-11 23:25:53 +09:00
Gyuho Lee
e34423b6ff
Merge pull request #10251 from ueokande/fix-github-links
Fix github links
2018-11-09 18:28:42 -08:00
Shin'ya Ueoka
aa4313a55a *: fix github links 2018-11-10 11:14:18 +09:00
Sam Batschelet
9454c4cab0
*: add client support for discovery-srv-name
Add support for --discovery-srv-name flag to etcdctl, gRPC proxy, and etcd gateway.
2018-11-09 16:30:58 -05:00
Sam Batschelet
e0f7807f1b
CHANGELOG: highlight improved discovery-srv-name support
Signed-off-by: Sam Batschelet <sbatsche@redhat.com>
2018-11-09 14:51:39 -05:00
Sam Batschelet
61c8d7a582
tests/docker-dns-srv: add tests for docker-dns-srv-name.
Signed-off-by: Sam Batschelet <sbatsche@redhat.com>
2018-11-09 13:51:04 -05:00
Sam Batschelet
fa35126ef8
*: add client support for discovery-srv-name
Signed-off-by: Sam Batschelet <sbatsche@redhat.com>
2018-11-09 10:13:04 -05:00
Gyuho Lee
83304cfc80 tools/etcd-dump-metrics: add missing godoc
https://godoc.org/github.com/etcd-io/etcd/tools/etcd-dump-metrics

Signed-off-by: Gyuho Lee <leegyuho@amazon.com>
2018-10-31 16:12:32 -07:00
Xiang Li
c0e04700cf
Merge pull request #10230 from manishrjain/master
raft: Explain ReportSnapshot and Propose behavior
2018-11-01 06:48:45 +08:00
Gyuho Lee
8e907e48f9
Merge pull request #10229 from gyuho/fix-flag-tests
pkg/flags: fix "TestSetFlagsFromEnvParsingError"
2018-10-31 15:42:32 -07:00
Manish R Jain
4aa72ca1d3
raft: Explain ReportSnapshot and Propose behavior
Update godocs for node interface, explaining the behavior of ReportSnapshot and Propose.
2018-10-31 15:37:55 -07:00
Gyuho Lee
7b32c07899 pkg/flags: fix "TestSetFlagsFromEnvParsingError"
Signed-off-by: Gyuho Lee <leegyuho@amazon.com>
2018-10-31 10:44:38 -07:00
Gyuho Lee
3f3eae7822
Merge pull request #10227 from imjoey/doc_fix_start_gateway_command
Documentation/op-guide: fix error command to start gateway
2018-10-30 20:02:41 -07:00
imjoey
bece069329 doc: Fix starting etcd gateway command using DNS. 2018-10-31 10:28:35 +08:00
Gyuho Lee
be7c8fe423 docs: update "requests>=2.20.0"
To resolve the security alert https://nvd.nist.gov/vuln/detail/CVE-2018-18074.

Signed-off-by: Gyuho Lee <leegyuho@amazon.com>
2018-10-29 15:00:10 -07:00
Gyuho Lee
252dc1f994
Merge pull request #10220 from ping40/pagewriter
pkg/ioutil: n is equal or greater than cw.writeBytes
2018-10-28 14:33:37 -07:00
ping40
5a94f97a4f pkg/ioutil: n is equal or greater than cw.writeBytes 2018-10-27 16:13:33 +08:00
Gyuho Lee
583763261f
Merge pull request #10216 from hexfusion/shellcheck
*: resolve shellcheck errors.
2018-10-26 06:15:44 -07:00
Sam Batschelet
78d01140ff *: resolve shellcheck errors. 2018-10-25 19:41:11 -04:00
Xiang Li
798955d4d6
Merge pull request #10209 from ping40/d1024
raft: Fix comment on TestLeaderBcastBeat
2018-10-25 14:42:16 -07:00
Gyuho Lee
38da00be33
Merge pull request #10212 from gyuho/raft-typo
raft: fix godoc in tests
2018-10-25 09:51:35 -07:00
Gyuho Lee
b7ed4165ea raft: fix godoc in tests
Signed-off-by: Gyuho Lee <leegyuho@amazon.com>
2018-10-24 23:23:32 -07:00
Gyuho Lee
965ba5ca8b
Merge pull request #10203 from ping40/doc1022_2
raft: fix description in UT
2018-10-24 23:21:02 -07:00
Xiang Li
5d8975d7ad
Merge pull request #10207 from jpbetz/concurrent-new-client-fix
*: Fix concurrent clientv3 client creation in 3.4 by using proper UUIDs
2018-10-24 16:08:36 -07:00
Gyuho Lee
ea68efb259 CHANGELOG: add "raft unbounded log growth prevention" PR
Signed-off-by: Gyuho Lee <leegyuho@amazon.com>
2018-10-24 15:55:08 -07:00
ping40
10255cf196 raft: Fix comment on TestLeaderBcastBeat 2018-10-24 16:56:10 +08:00
Gyuho Lee
86b933311d
Merge pull request #10205 from gyuho/testing-prow
OWNERS: experiment
2018-10-22 16:07:27 -07:00
Joe Betz
6a43db1eff
clientv3: Fix concurrent clientv3 client creation in 3.4 by using proper UUIDs 2018-10-22 14:08:58 -07:00
Joe Betz
2338f747bf
vendor: Add dependency on google/uuid for safe UUID generation
etcd currently generates a few UUID style identifiers using approaches like `fmt.Sprintf("client-%s", strconv.FormatInt(time.Now().UnixNano(), 36))`.
But these can collide on machine architectures with larger timestamp steps (see https://github.com/etcd-io/etcd/issues/10035).
2018-10-22 14:06:24 -07:00
Gyuho Lee
c561f8310e OWNERS: experiment
Signed-off-by: Gyuho Lee <leegyuho@amazon.com>
2018-10-22 12:49:08 -07:00
Tobias Schottdorf
b42b39446b
Merge pull request #10199 from tschottdorf/fix-max-uncommitted-size
raft: fix bug in unbounded log growth prevention mechanism
2018-10-22 21:30:01 +02:00
Xiang Li
a27a73e448
Merge pull request #10193 from johncming/master
mvcc/backend: code format optimization
2018-10-22 11:50:53 -07:00
Tobias Schottdorf
ad49c8fd98 raft: fix bug in unbounded log growth prevention mechanism
The previous code was using the proto-generated `Size()` method to
track the size of an incoming proposal at the leader. This includes
the Index and Term, which were mutated after the call to `Size()`
when appending to the log. Additionally, it was not taking into
account that an ignored configuration change would ignore the
original proposal and append an empty entry instead.

As a result, a fully committed Raft group could end up with a non-
zero tracked uncommitted Raft log counter that would eventually hit
the ceiling and drop all future proposals indiscriminately. It would
also immediately imply that proposals exceeding the threshold alone
would get refused (as the "first uncommitted proposal" gets special
treatment and is always allowed in).

Track only the size of the payload actually appended to the Raft log
instead.

For context, see:
https://github.com/cockroachdb/cockroach/issues/31618#issuecomment-431374938
2018-10-22 11:28:39 +02:00
ping40
de470991e1 raft: fix description in UT 2018-10-22 13:59:50 +08:00
Gyuho Lee
8c80efb886 CHANGELOG: highlight minimum recommended version, change github org URLs
Signed-off-by: Gyuho Lee <leegyuho@amazon.com>
2018-10-18 16:39:01 -07:00
Gyuho Lee
88e0830560 CHANGELOG-3.4: add "raft.Config.MaxUncommittedEntriesSize" change
Signed-off-by: Gyuho Lee <leegyuho@amazon.com>
2018-10-18 11:47:50 -07:00
caoming
cf309757d6 mvcc/backend: code format optimization 2018-10-17 14:18:09 +08:00
Xiang Li
7a759c18d2
Merge pull request #10178 from johncming/master
bugfix: use the backend create by snapshot instead of origin one in tests
2018-10-15 10:54:34 -07:00
Gyuho Lee
1ded5aaf4d
Merge pull request #10150 from cbeneke/fix/mixin-insufficent-member-alert
etcd-mixin: Fix EtcdInsufficientMembers alerting
2018-10-15 10:27:59 -07:00
Christian Beneke
c75ba98f81 Documentation/etcd-mixin: Fix EtcdInsufficientMembers alerting
Currently the EtcdInsufficientMembers alert fires, when more than (X/2)-1
instances are unavailable. This fixes it to fire at the correct limit of (X-1)/2
unavailable instances and $value now contains the number of available instances
instead of unavailable ones. Added unit test for EtcdInsufficientMembers alert.
2018-10-15 19:23:43 +02:00
caoming
bf49b9a145 mvcc/backend: fix to use the backend create by snapshot instead of origin one. 2018-10-15 09:35:20 +08:00
Xiang Li
dac8c6fcc0
Merge pull request #10167 from nvanbenschoten/nvanbenschoten/limitUncommitted
raft: provide protection against unbounded Raft log growth
2018-10-13 23:52:28 -07:00
Nathan VanBenschoten
73c20cc1b7 raft: Fix comment on sendHeartbeat 2018-10-14 00:03:43 -04:00
Nathan VanBenschoten
7be7ac5a5d raft: Fix spelling in doc.go 2018-10-13 23:25:05 -04:00
Nathan VanBenschoten
f89b06dc6d raft: provide protection against unbounded Raft log growth
The suggested pattern for Raft proposals is that they be retried
periodically until they succeed. This turns out to be an issue
when a leader cannot commit entries because the leader will continue
to append re-proposed entries to its log without committing anything.
This can result in the uncommitted tail of a leader's log growing
without bound until it is able to commit entries.

This change add a safeguard to protect against this case where a
leader's log can grow without bound during loss of quorum scenarios.
It does so by introducing a new, optional ``MaxUncommittedEntriesSize
configuration. This config limits the max aggregate size of uncommitted
entries that may be appended to a leader's log. Once this limit
is exceeded, proposals will begin to return ErrProposalDropped
errors.

See cockroachdb/cockroach#27772
2018-10-13 23:25:05 -04:00