shawwang
15eeb2c4ae
etcdserver: add auth revision to AuthStatus to improve observability and testability
2020-03-04 22:37:24 +08:00
shawwang
c6fce8c320
Documentation: generate *.swagger.json using latest protoc-gen-swagger
2020-03-04 22:36:13 +08:00
qupeng
6f850a65a1
raft: cleanup read index code ( #11528 )
...
Signed-off-by: qupeng <qupeng@pingcap.com>
2020-03-03 09:20:25 -08:00
tangcong
ebe256d61c
auth: print warning log when error is ErrAuthOldRevision
2020-03-03 23:21:25 +08:00
Sahdev Zala
3f4f7c5a6c
Merge pull request #11669 from jingyih/update_changelog_11621
...
CHANGELOG: update from #11621
2020-03-02 15:53:56 -05:00
jingyih
cec9807a85
changelog: update from 11621
...
Also moving an previous update in changelog 3.4 to the right spot.
2020-03-02 10:11:13 -08:00
Jingyi Hu
cb633418a2
Merge pull request #11652 from tangcong/fix-auth-store-corruption-bug
...
auth/store: save consistentIndex to fix a data corruption bug
2020-03-01 18:40:11 +08:00
jingyih
e2ff769244
CHANGELOG: update from 11638
2020-02-29 07:33:55 -08:00
Jingyi Hu
d774916f6d
Merge pull request #11638 from jingyih/fix_etcdctl_member_list
...
etcdctl: fix member add (again...)
2020-02-29 23:08:33 +08:00
shawwang
f14d2a087f
auth: add new metric 'etcd_debugging_auth_revision'
2020-02-29 13:31:44 +08:00
shawwang
08a8b80e32
tools/etcd-dump-db: add auth decoder, optimize print format
2020-02-29 13:31:44 +08:00
tangcong
06ad53321e
*: fix auth revision corruption bug
2020-02-29 13:31:37 +08:00
Tobias Grieger
52fba431b6
Merge pull request #11046 from tbg/joint-auto-leave
...
raft: fix auto-transitioning out of joint config
2020-02-25 13:18:29 +01:00
Tobias Schottdorf
0544f33248
raft: clarify ApplyConfChange contract for rejected conf changes
...
Apps typically maintain the raft configuration as part of the state
machine. As a result, they want to be able to reject configuration change
entries at apply time based on the state on which the entry is supposed
to be applied. When this happens, the app should not call
ApplyConfChange, but the comments did not make this clear.
As a result, it was tempting to pass an empty pb.ConfChange or it's V2
version instead of not calling ApplyConfChange.
However, an empty V1 or V2 proto aren't noops when the configuration is
joint: an empty V1 change is treated internally as a single
configuration change for NodeID zero and will cause a panic when applied
in a joint state. An empty V2 proto is treated as a signal to leave a
joint state, which means that the app's config and raft's would diverge.
The comments updated in this commit now ask users to not call
ApplyConfState when they reject a conf change. Apps that never use joint
consensus can keep their old behavior since the distinction only matters
when in a joint state, but we don't want to encourage that.
2020-02-25 12:45:45 +01:00
Tobias Schottdorf
37c7e4d1d8
raft: fix auto-transitioning out of joint config
...
The code doing so was undertested and buggy: it would launch multiple
attempts to transition out when the conf change was not the last element
in the log.
This commit fixes the problem and adds a regression test. It also
reworks the code to handle a former untested edge case, in which the
auto-transition append is refused. This can't happen any more with the
current version of the code because this proposal has size zero and is
special cased in increaseUncommittedSize. Last but not least, the
auto-leave proposal now also bumps pendingConfIndex, which was not done
previously due to an oversight.
2020-02-25 12:35:51 +01:00
Tobias Schottdorf
2332705f10
raft: remove bogus tail end of membership change interaction test
...
The test was supposed to end earlier, but some old copy pasta
survived.
2020-02-25 12:35:51 +01:00
Gyuho Lee
5d7d8c09af
CHANGELOG-3.4: update
...
Signed-off-by: Gyuho Lee <leegyuho@amazon.com>
2020-02-24 13:42:21 -08:00
Jingyi Hu
085b19b5ea
Merge pull request #11645 from jingyih/update_changelog_11640
...
CHANGELOG: update from #11640 and #11644
2020-02-23 14:42:50 +08:00
jingyih
d911a2b4d1
CHANGELOG: update from 11640 and 11644
2020-02-21 23:24:11 -08:00
Sahdev Zala
8c1a820a10
Merge pull request #11640 from ereslibre/fix-learner-promotion
...
Fix quorum calculation when promoting a learner member
2020-02-21 12:32:32 -05:00
Tobias Grieger
8756286fe8
Merge pull request #11568 from lzhfromustc/GL_test_7_bugs
...
transport: simple fix in test functions to prevent goroutine leak
2020-02-20 16:54:42 +01:00
Rafael Fernández López
6991f619f2
etcdserver: fix quorum calculation when promoting a learner member
...
When promoting a learner member we should not count already a voting
member, but take only into account the number of existing voting
members and their current status (started, unstarted) when taking the
decision whether a learner member can be promoted.
Before this change, it was impossible to grow from a quorum N to a N+1
through promoting a learning member.
Fixes : #11633
2020-02-20 12:06:35 +01:00
EDDYCJY
d94f4cacf2
CHANGELOG-3.5: update from 11564
2020-02-19 17:19:17 +08:00
煎鱼
1cb959698a
Merge branch 'master' into update-changelog
2020-02-19 16:31:55 +08:00
EDDYCJY
b3b75c8f56
CHANGELOG-3.5: update from 11564
2020-02-19 16:29:59 +08:00
jingyih
8f5ce68adb
etcdctl: fix member add command
...
Use members information from member add response, which is
guaranteed to be up to date.
2020-02-19 00:12:15 -08:00
Jingyi Hu
d6a3c995cf
Merge pull request #11621 from jingyih/corruption_check_tls
...
etcdserver: make corruption check work under peer mTLS
2020-02-18 18:55:13 +08:00
EDDYCJY
4258cdd2ef
clientv3: fix grpc-go(v1.27.0) incompatible changes to balancer/resolver.
2020-02-18 18:27:53 +08:00
Jingyi Hu
f0faa5501d
Merge pull request #11630 from jingyih/check_nil_before_use_boltOpenOptions
...
mvcc/backend: check for nil boltOpenOptions
2020-02-15 15:25:44 +08:00
jingyih
b6ee807e93
mvcc/backend: check for nil boltOpenOptions
...
Check if boltOpenOptions is nil before use it.
2020-02-14 21:26:52 -08:00
Jingyi Hu
74cfe52809
Merge pull request #11628 from tedyu/rm-db-tmp
...
mvcc/backend: remove db.tmp without checking logger presence
2020-02-15 04:42:32 +08:00
Ted Yu
7e0e6bf497
mvcc/backend: remove db.tmp regardless of logger presence
2020-02-14 12:10:24 -08:00
jingyih
c031b27491
etcdserver: corruption check via http
...
During corruption check, get peer's hashKV via http call.
2020-02-14 06:03:15 -08:00
Jingyi Hu
84ace97ad7
Merge pull request #11572 from lzhfromustc/API_Fatal_4
...
integration/clientv3: fix 4 API misusage in test functions
2020-02-14 00:27:41 -08:00
Joe Betz
bdf69dff90
Merge pull request #11626 from jpbetz/changelog-11613-backport
...
changelog: Add #11613 backport to 3.2, 3.3 and 3.4 changelogs
2020-02-13 14:53:30 -08:00
Joe Betz
605f30f328
changelog: Add 11613 backport to 3.2, 3.3 and 3.4 changelogs
2020-02-13 13:03:46 -08:00
Joe Betz
8bf7b2b1b4
Merge pull request #11613 from jpbetz/fix-defrag-orphan-file
...
mvcc/backend: Fix corruption bug in defrag
2020-02-13 12:02:05 -08:00
Ziheng Liu
f00394e384
integration/clientv3: fix 4 API misusage in test functions
2020-02-13 13:13:18 -05:00
Joe Betz
213f7f7877
mvcc/backend: Delete orphaned db.tmp files before defrag
2020-02-12 22:40:28 -08:00
Ziheng Liu
b340dfdcbb
transport: simple fix in test functions to prevent goroutine leak
2020-02-12 18:32:03 -05:00
Jingyi Hu
ca7a292790
Merge pull request #11617 from jingyih/remove_capnslog_etcd
...
vendor: remove capnslog
2020-02-12 13:06:57 -08:00
jingyih
09304a4d82
vendor: remove capnslog
...
Clean up capnslog from etcd code base. Remove its dependency.
2020-02-12 12:33:16 -08:00
Jingyi Hu
ae983523db
pkg: remove capnslog ( #11616 )
...
* pkg: remove capnslog
* CHANGELOG: function signature change
2020-02-12 11:15:41 -08:00
Jingyi Hu
bb29615359
proxy: remove capnslog ( #11614 )
...
* proxy: remove capnslog
* CHANGELOG: function signature change
2020-02-12 10:30:09 -08:00
Sahdev Zala
71e3220d36
Merge pull request #11605 from spzala/indexcasting
...
etcdctl: use appropriate type conversion
2020-02-12 10:08:37 -05:00
Jingyi Hu
61f279454e
etcdserver/api: remove capnslog ( #11606 )
...
* etcdserver/api/rafthttp: remove capnslog
* etcdserver/api/membership: remove capnslog
* etcdserver/api/v2auth: remove capnslog
* etcdserver/api/v2discovery: remove capnslog
* etdserver/api/v2stats: remove capnslog
* etcdserver/api/v2http: remove capnslog
* etcdserver/api/v3rpc: remove capnslog
* etcdserver/api: remove capnslog
Remove capnslog from etcdserver/api. Note that capnslog was
already removed in some packages under etcdserver/api in
previous commits.
2020-02-11 13:51:25 -08:00
Jingyi Hu
0a05f1a131
etcdmain: remove capnslog ( #11612 )
2020-02-11 13:45:44 -08:00
Jingyi Hu
c94782cd55
etcdserver: remove capnslog ( #11611 )
...
remove capnslog from etcdserver pkg, except etcdserver/api.
2020-02-11 08:54:14 -08:00
Sahdev Zala
a0bb739c4e
Merge pull request #11610 from mitake/authstatus
...
etcdserver: mark AuthStatus as no side effect request
2020-02-11 11:07:29 -05:00
Hitoshi Mitake
fda8d38bd4
etcdserver: mark AuthStatus as no side effect request
2020-02-11 23:26:50 +09:00