Benjamin Wang
ed0730c02e
update changelog for 3.4, 3.5 and 3.6 for the potential data loss in one-node cluster
...
Signed-off-by: Benjamin Wang <wachao@vmware.com>
2022-09-06 05:19:45 +08:00
Benjamin Wang
3dc5348d94
Merge pull request #14419 from ahrtr/alarm_list_ci
...
Move consistent_index forward when executing alarmList operation
2022-09-06 03:50:58 +08:00
Benjamin Wang
73029fe89f
Merge pull request #14400 from ahrtr/one_member_data_loss_raft
...
[Second Solution] Fix the potential data loss for clusters with only one member (simpler solution)
2022-09-05 20:00:20 +08:00
Benjamin Wang
cc840336f0
move consistent_index forward when executing alarmList operation
...
The alarm list is the only exception that doesn't move consistent_index
forward. The reproduction steps are as simple as,
```
etcd --snapshot-count=5 &
for i in {1..6}; do etcdctl alarm list; done
kill -9 <etcd_pid>
etcd
```
Signed-off-by: Benjamin Wang <wachao@vmware.com>
2022-09-05 10:05:55 +08:00
Benjamin Wang
4d57eb8d3b
Merge pull request #14360 from clarkfw/common-test-of-e2e-disable-strict-reconfig-check-by-default
...
tests: unify `--strict-reconfig-check` config of common framework
2022-09-05 03:24:07 +08:00
Clark
3f3149b15f
tests: fix failed integration test cases after enabling --strict-reconfig-check
by default
...
Signed-off-by: Clark <fwyongxing@gmail.com>
2022-09-03 15:56:51 +08:00
Benjamin Wang
3c79a4dc38
Merge pull request #14418 from lovehhf/update_goreman_install_comment
...
Procfiles: Update Goreman Installation Command
2022-09-03 15:18:10 +08:00
lovehhf
d8ddb2dc52
Procfiles: Update Goreman Installation Command
...
Starting in Go 1.17, Installing executables with go get is deprecated. go install may be used instead.
Refer to https://go.dev/doc/go-get-install-deprecation
Signed-off-by: Hongfei Huang <853885165@qq.com>
2022-09-03 10:34:19 +08:00
Clark
3beb25489d
tests: enable --strict-reconfig-check
by default and expose it to common framework
...
Signed-off-by: Clark <fwyongxing@gmail.com>
2022-08-31 22:21:23 +08:00
Benjamin Wang
5707147363
Merge pull request #14391 from cenkalti/revive
...
Add revive to the list of linters.
2022-08-31 16:38:51 +08:00
Benjamin Wang
30d5f0a8f9
Merge pull request #14392 from cenkalti/golangci-lint-github-action
...
Setup golangci-lint GitHub action
2022-08-31 16:21:15 +08:00
Benjamin Wang
a285b06d63
Merge pull request #14405 from Abirdcfly/main
...
chore: remove duplicate word in comments
2022-08-31 16:19:30 +08:00
Abirdcfly
858afba44e
chore: remove duplicate word in comments
...
Signed-off-by: Abirdcfly <fp544037857@gmail.com>
2022-08-30 20:00:26 +08:00
Benjamin Wang
2a10049e47
fix the potential data loss for clusters with only one member
...
For a cluster with only one member, the raft always send identical
unstable entries and committed entries to etcdserver, and etcd
responds to the client once it finishes (actually partially) the
applying workflow.
When the client receives the response, it doesn't mean etcd has already
successfully saved the data, including BoltDB and WAL, because:
1. etcd commits the boltDB transaction periodically instead of on each request;
2. etcd saves WAL entries in parallel with applying the committed entries.
Accordingly, it may run into a situation of data loss when the etcd crashes
immediately after responding to the client and before the boltDB and WAL
successfully save the data to disk.
Note that this issue can only happen for clusters with only one member.
For clusters with multiple members, it isn't an issue, because etcd will
not commit & apply the data before it being replicated to majority members.
When the client receives the response, it means the data must have been applied.
It further means the data must have been committed.
Note: for clusters with multiple members, the raft will never send identical
unstable entries and committed entries to etcdserver.
Signed-off-by: Benjamin Wang <wachao@vmware.com>
2022-08-30 15:29:20 +08:00
Marek Siarkowicz
cdd2b737f0
Merge pull request #14401 from ahrtr/ctx_error_20220830
...
[test] Fix test code compiling error due to not enough arguments
2022-08-30 09:18:21 +02:00
Benjamin Wang
e1c5d2a9ac
fix test code compiling error due to not enough arguments in call to node0.Restart
...
Signed-off-by: Benjamin Wang <wachao@vmware.com>
2022-08-30 13:15:04 +08:00
Piotr Tabor
77773c7798
Merge pull request #14374 from Comolli/main
...
Reduce redundant code and memory allocation.
2022-08-29 21:15:06 +02:00
Piotr Tabor
de41f83343
Merge pull request #14383 from serathius/context-e2e
...
tests: Add context to e2e cluster start
2022-08-29 21:12:12 +02:00
Marek Siarkowicz
f56e0d0e15
Merge pull request #14395 from ahrtr/SpawnCmdWithLogger_name
...
[test] add the missing parameter 'name' into SpawnCmdWithLogger for cov test
2022-08-29 09:02:07 +02:00
Benjamin Wang
fdf22b241a
add the missing parameter 'name' into SpawnCmdWithLogger for cov test
...
Signed-off-by: Benjamin Wang <wachao@vmware.com>
2022-08-29 13:37:23 +08:00
Cenk Alti
66d37aaf1d
Setup golangci-lint GitHub action.
...
Part of "Enhance the static-analysis workflow" issue. #14164
Signed-off-by: Cenk Alti <cenkalti@gmail.com>
2022-08-27 14:06:11 -04:00
Cenk Alti
f8b65d53ba
Add revive to the list of linters.
...
Part of "Enhance the static-analysis workflow" issue. #14164
Signed-off-by: Cenk Alti <cenkalti@gmail.com>
2022-08-27 13:41:14 -04:00
Benjamin Wang
eb25e433cd
Merge pull request #14390 from Abirdcfly/main
...
chore: remove duplicate word in comments
2022-08-27 15:38:03 +08:00
Abirdcfly
08a9d1da07
chore: remove duplicate word in comments
...
Signed-off-by: Abirdcfly <fp544037857@gmail.com>
2022-08-27 13:39:48 +08:00
Hitoshi Mitake
9c8326bb50
Merge pull request #14358 from vivekpatani/main
...
server/auth: refresh cache on each NewAuthStore
2022-08-27 11:13:59 +09:00
Benjamin Wang
a3f15645d8
Merge pull request #14386 from DevMayurJ/main
...
Readme: Removed unnecessary comma.
2022-08-26 19:05:55 +08:00
Benjamin Wang
dc4b810195
Merge pull request #14388 from niconorsk/fix/notify-systemd-when-cluster-ready-times-out
...
etcdmain: Honour ExperimentalWaitClusterReadyTimeout in startEtcd
2022-08-26 18:34:52 +08:00
Nicolai Moore
e15bdd9df1
etcdmain: Honour ExperimentalWaitClusterReadyTimeout in startEtcd
...
When we can't reach quorum, we were waiting forever and never sending
the systemd notify message. As a result, systemd would eventually time out
and restart the etcd process which likely would make the unhealthy cluster
in an even worse state
Improves #13785
Signed-off-by: Nicolai Moore <niconorsk@gmail.com>
2022-08-26 18:06:50 +10:00
Benjamin Wang
f00578c3cd
Merge pull request #14389 from ahrtr/cleanup_e2e_fields
...
Cleanup some e2e test configurations
2022-08-26 15:05:53 +08:00
Marek Siarkowicz
70de5c8937
tests: Add context to e2e cluster start
...
Signed-off-by: Marek Siarkowicz <siarkowicz@google.com>
2022-08-26 08:08:17 +02:00
Marek Siarkowicz
dd3cf97dfb
Merge pull request #14381 from serathius/context
...
Add context to tests common client interface
2022-08-26 08:06:16 +02:00
Benjamin Wang
17b83ea810
Cleanup some e2e test configurations
...
Notes:
1. compactPhysical in ctlCtx and withQuota aren't used at all, they are dead code.
2. quotaBackendBytes in ctlCtx isn't used either. Instead, users (test cases) set the QuotaBackendBytes directly.
Signed-off-by: Benjamin Wang <wachao@vmware.com>
2022-08-26 13:53:33 +08:00
Marek Siarkowicz
46fe4b8e1c
tests: Rename common client lease methods to match
...
Signed-off-by: Marek Siarkowicz <siarkowicz@google.com>
2022-08-26 07:12:47 +02:00
Marek Siarkowicz
b7272df69f
tests: Remove dummy client implementations
...
Signed-off-by: Marek Siarkowicz <siarkowicz@google.com>
2022-08-26 07:12:47 +02:00
Marek Siarkowicz
72bec6fbc2
tests: Add context to common client interface
...
Signed-off-by: Marek Siarkowicz <siarkowicz@google.com>
2022-08-26 07:12:45 +02:00
DevMayurJ
b39506b4e7
Update README.md
...
Signed-off-by: Mayur Jadhav <jadhav.mayur30@gmail.com>
2022-08-26 09:32:20 +05:30
Benjamin Wang
e40828540c
Merge pull request #14354 from biosvs/add-client-auto-sync-to-proxy
...
Added client-auto-sync-interval argument to the grpc-proxy
2022-08-26 05:36:01 +08:00
Vitalii Levitskii
be58a2539c
Added client-auto-sync-interval argument to the grpc-proxy
...
Signed-off-by: Vitalii Levitskii <vitalii@uber.com>
2022-08-25 15:33:38 +03:00
Marek Siarkowicz
f36a8782f0
Merge pull request #14345 from nic-chen/tests/watch
...
tests: Migrate watch test to common framework
2022-08-25 13:35:34 +02:00
Benjamin Wang
96a2669839
Merge pull request #14380 from ahrtr/cleanup_etcdctl_mod
...
Cleanup the go.mod for etcdctl
2022-08-25 16:14:50 +08:00
Marek Siarkowicz
7086a06490
Merge pull request #14377 from tjungblu/flake_14333
...
Add ErrTimeoutDueToLeaderFail as expected error
2022-08-25 10:04:53 +02:00
Benjamin Wang
3196c2cb5f
Cleanup the go.mod for etcdctl
...
etcdctl doesn't depend on the following packages at all,
1. go.etcd.io/etcd/client/v2
2. go.etcd.io/etcd/etcdutl/v3
3. go.etcd.io/etcd/raft/v3
4. go.etcd.io/etcd/server/v3
Signed-off-by: Benjamin Wang <wachao@vmware.com>
2022-08-25 13:30:55 +08:00
Benjamin Wang
82bf79d4ce
Merge pull request #14376 from biosvs/fix-expect-package
...
Fixed infinite loop in ExpectProcess.ExpectFunc
2022-08-25 05:29:30 +08:00
Marek Siarkowicz
e363480089
Merge pull request #14378 from spzala/removeircref
...
Remove IRC ref
2022-08-24 22:28:26 +02:00
Sahdev Zala
e3787ef706
Remove IRC ref
...
The IRC is not used and so removing it as per previous discussion
with the etcd team.
Signed-off-by: Sahdev Zala <spzala@us.ibm.com>
2022-08-24 15:52:05 -04:00
Vitalii Levitskii
71c5360f98
Fixed infinite loop in ExpectProcess.ExpectFunc
...
Signed-off-by: Vitalii Levitskii <vitalii@uber.com>
2022-08-24 16:46:24 +03:00
Thomas Jungblut
e1e92e9c0d
Add ErrTimeoutDueToLeaderFail as expected error
...
This fixes ci flakes where timeouts are expected to happen in network
partitions.
issue: #14333
Signed-off-by: Thomas Jungblut <tjungblu@redhat.com>
2022-08-24 13:56:45 +02:00
vivekpatani
ae608da7e6
server,test: refresh cache on each NewAuthStore
...
- permissions were incorrectly loaded on restarts.
- https://github.com/etcd-io/etcd/issues/14355
Signed-off-by: vivekpatani <9080894+vivekpatani@users.noreply.github.com>
2022-08-23 20:11:47 -07:00
Benjamin Wang
c29dbf3400
Merge pull request #14367 from ahrtr/update_3.5_changelog_keepalive
...
Update changelog-3.5 to cover the change for refactoring the keepAliveListener and keepAliveConn
2022-08-24 10:14:42 +08:00
comolli
a5515171c3
Reduce redundant code and memory allocation.
...
Signed-off-by: comolli <liangweicheng2@gmail.com>
2022-08-24 09:15:34 +08:00