Vladimir Sokolov
a4f140c9fa
testing: fix TestOpenWithMaxIndex cleanup
...
A WAL object was closed by defer, however the WAL was rewritten afterwards,
so defer closed already closed WAL but not the new one. It caused a data
race between writing file and cleaning up a temporary test directory,
which led to a non-deterministic bug.
Fixes #14332
Signed-off-by: Vladimir Sokolov <vsvastey@gmail.com>
2022-09-07 21:30:16 +03:00
Sahdev Zala
e782619415
Add features dev and support policy doc
...
Related https://github.com/etcd-io/etcd/issues/13775
Signed-off-by: Sahdev Zala <spzala@us.ibm.com>
2022-09-07 11:15:10 -04:00
Benjamin Wang
098354859c
Merge pull request #14427 from BabisK/issue-14426
...
Mockserver can handle requests to the leases API
2022-09-07 15:26:36 +08:00
Babis Kaidos
0eb642c4d9
Mockserver can handle requests to the leases API
...
This should allow clients using the leases API to perform UTs.
Fixes #14426
Signed-off-by: Babis Kaidos <babis_k@outlook.com>
2022-09-06 18:48:51 +03:00
Yingrong Zhao
57206f9dfb
shutdown tracer provider first
...
Signed-off-by: Yingrong Zhao <yingrong.zhao@gmail.com>
2022-09-06 11:26:31 -04:00
Marek Siarkowicz
f40a650e76
Merge pull request #14430 from ahrtr/changelog_ci_log
...
Update changelog to cover some PRs
2022-09-06 09:29:24 +02:00
Marek Siarkowicz
f0c95cadea
Merge pull request #14281 from clarkfw/migrate-member-add-tests
...
tests: Migrate member add tests to common framework
2022-09-06 09:27:28 +02:00
Benjamin Wang
92ddc940ca
Update changelog to cover some PRs
...
Issues:
1. https://github.com/etcd-io/etcd/issues/14402 fixed in 3.4 only;
2. https://github.com/etcd-io/etcd/issues/14382 fixed in both 3.5 and main.
Signed-off-by: Benjamin Wang <wachao@vmware.com>
2022-09-06 12:56:42 +08:00
Clark
fcc076fb78
tests: Migrate member add tests to common framework
...
Signed-off-by: Clark <fwyongxing@gmail.com>
2022-09-06 11:02:54 +08:00
Benjamin Wang
a55265513e
Merge pull request #14425 from ahrtr/update_changelog_data_loss
...
Update changelog for 3.4, 3.5 and 3.6 for the potential data loss in one-node cluster
2022-09-06 08:41:51 +08:00
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
Allen Ray
c52108942b
Merge branch 'main' into main
2022-08-29 12:07:27 -04: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