Commit Graph

18332 Commits (c31d75818973ea6ad6dc43961cf51c1b4f6e93f3)

Author SHA1 Message Date
Bogdan Kanivets c31d758189 functional: remove SIGQUIT_ETCD_AND_REMOVE_DATA_AND_STOP_AGENT command
Problem: both SIGQUIT_ETCD_AND_REMOVE_DATA_AND_STOP_AGENT and test.sh
will attempt to stop agents and remove directories.

Solution: since test.sh creates directories and starts test, it should be
responsible for cleanup.

See https://github.com/etcd-io/etcd/issues/14384

Signed-off-by: Bogdan Kanivets <bkanivets@apple.com>
2022-09-15 10:55:32 -07: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 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
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
Marek Siarkowicz e9c53a0875
Merge pull request #14375 from AustinBenoit/Docs/update_links
Documentation: Update Broken Links
2022-08-23 21:10:13 +02:00
Austin Benoit 91e76eccd2 Documentation: Update Broken Links
Fix broken links in documentation.

Signed-off-by: Austin Benoit <austinryanbenoit@gmail.com>
2022-08-23 14:35:32 -04:00
Marek Siarkowicz e087c349e1
Merge pull request #14238 from serathius/emeritus
Add process to remove maintainers that don't fulfill their duties
2022-08-23 11:43:05 +02:00
nic-chen f6ed36372b tests: Migrate watch test to common framework
Signed-off-by: nic-chen <chenjunxu6@gmail.com>
2022-08-22 21:55:57 +08:00
Benjamin Wang 93be38856c Update changelog-3.5 to cover the change for refactoring the keepAliveListener and keepAliveConn
Refer to https://github.com/etcd-io/etcd/pull/14366,
Also refer to https://github.com/etcd-io/etcd/pull/14356

Signed-off-by: Benjamin Wang <wachao@vmware.com>
2022-08-21 13:06:56 +08:00
Sahdev Zala 192d635da9
Merge pull request #14292 from tjungblu/debug_e2e
Add test name to e2e cluster members
2022-08-20 19:30:44 -04:00
Benjamin Wang 1851316519
Merge pull request #14266 from stefanmonkey/feat/grpc-logging
Add logging grpc request and response content with grpc-proxy mode
2022-08-19 05:52:16 +08:00
Sahdev Zala 3c306c53bc
Merge pull request #14359 from ahrtr/functional_test_20220818
Cleanup all etcd-agent and etcd processes when the test finishes
2022-08-18 11:44:51 -04:00
Sahdev Zala 12d63d100e
Merge pull request #14357 from amdprophet/close-keepalive-stream
clientv3: close streams after use in lessor keepAliveOnce method
2022-08-18 11:30:44 -04:00
Benjamin Wang d8ee37641d Cleanup all etcd-agent and etcd processes when the test finishes
There are two cases, when interrupted by users, then forcibly kill
all processes. Otherwise, gracefully terminate all processes.

Signed-off-by: Benjamin Wang <wachao@vmware.com>
2022-08-18 17:15:39 +08:00
Benjamin Wang 27ffd7e1cf
Merge pull request #14351 from spacewander/rca
chore: log when an invalid watch request is received
2022-08-18 09:45:29 +08:00
Justin Kolberg 295044fba2
clientv3: close streams after use in lessor keepAliveOnce method
Streams are now closed after being used in the lessor `keepAliveOnce` method.
This prevents the "failed to receive lease keepalive request from gRPC stream"
message from being logged by the server after the context is cancelled by the
client.

Signed-off-by: Justin Kolberg <amd.prophet@gmail.com>
2022-08-17 18:02:13 -07:00
Sahdev Zala ba0c7c31a7
Merge pull request #14356 from ahrtr/functional_test_20220816
Minor refactoring on the keepAliveListener and keepAliveConn
2022-08-17 17:34:09 -04:00
Benjamin Wang 74506738b8 Refactor the keepAliveListener and keepAliveConn
Only `net.TCPConn` supports `SetKeepAlive` and `SetKeepAlivePeriod`
by default, so if you want to warp multiple layers of net.Listener,
the `keepaliveListener` should be the one which is closest to the
original `net.Listener` implementation, namely `TCPListener`.

Signed-off-by: Benjamin Wang <wachao@vmware.com>
2022-08-18 04:24:05 +08:00
Benjamin Wang 2f51d3d9b7 improve the performance of starting functional test
The proxy must be waiting for the etcd to be running, but the current
implementation hard codes the wating time as 5 seconds. The improvement
is to dynamically check whether the etcd is running, and start the
proxy when etcd port is reachable.

Signed-off-by: Benjamin Wang <wachao@vmware.com>
2022-08-18 04:18:11 +08:00
spacewander 508ce517e0 update according to the review
Signed-off-by: spacewander <spacewanderlzx@gmail.com>
2022-08-17 09:25:37 +08:00
Benjamin Wang ff6b85da83
Merge pull request #14340 from xakdwch/main
etcdctl: add --max-txn-ops flag to make-mirror command
2022-08-17 05:36:16 +08:00
spacewander bebefd8b80 chore: log when an invalid watch request is received
As protobuf doesn't have required field, user may send an empty
WatchRequest by mistake. Currently, etcd will ignore the invalid request
and keep the stream opening. If we don't reject the invalid request by
closing the stream, it would be better to leave a log there.

This commit also fixes a typo in the comment.

Signed-off-by: spacewander <spacewanderlzx@gmail.com>
2022-08-16 11:33:01 +08:00
Benjamin Wang 22cc682606
Merge pull request #14346 from ahrtr/functional_test_upadte_20220815
Improve functional test code
2022-08-16 05:09:49 +08:00
Benjamin Wang bba4eb4d81 Improve functional test code
Get duplicated code wraped in common functions, and simplify
error handling.

Signed-off-by: Benjamin Wang <wachao@vmware.com>
2022-08-15 16:59:39 +08:00
xakdwch 7cc3f5f97e etcdctl: add --max-txn-ops flag to make-mirror command
--max-txn-ops flag allows users to define the maximum number of operations permitted in
a transaction during syncing updates.if unlimited syncing may fail when number of txn ops
exceeds the maximum number of server side.

Signed-off-by: xakdwch <xakdwch5@gmail.com>
2022-08-15 13:38:32 +08:00
Sahdev Zala a1405e9633
Merge pull request #14344 from clarkfw/common-framework-share-constants
tests: e2e and integration share TickDuration constant
2022-08-14 21:22:35 -04:00
Clark 0b9f43410a tests: e2e and integration share TickDuration constant
Signed-off-by: Clark <fwyongxing@gmail.com>
2022-08-14 18:49:46 +08:00
Benjamin Wang 012fc51390
Merge pull request #14304 from clarkfw/e2e-cluster-waitleader
tests: add WaitLeader function to common framework
2022-08-14 13:44:28 +08:00
Benjamin Wang fff5d00ccf
Merge pull request #14149 from lavacat/main-txn-panic
server: don't panic in readonly serializable txn
2022-08-14 05:41:57 +08:00
Benjamin Wang 52f367b1f6
Merge pull request #14208 from ahrtr/print_lease_hex
Print clusterID, memberID and leaseID in hexdecimal
2022-08-13 05:31:40 +08:00
Clark a5409c62e6 tests: add WaitLeader function to common framework
Signed-off-by: Clark <fwyongxing@gmail.com>
2022-08-11 12:46:40 +08:00