1331 Commits

Author SHA1 Message Date
Marek Siarkowicz
b7e7811ba4
Merge pull request #16091 from serathius/robustness-stale-read-1
tests/robustness: Implement stale reads without validation
2023-06-19 11:21:48 +02:00
Benjamin Wang
b92d099360 dependency: bump golang.org/x/net from 0.10.0 to 0.11.0
Signed-off-by: Benjamin Wang <wachao@vmware.com>
2023-06-19 09:25:07 +01:00
Marek Siarkowicz
5e7349b44c
Merge pull request #16094 from serathius/robustness-retry-failpoint
Robustness retry failpoint
2023-06-19 09:10:46 +02:00
Marek Siarkowicz
43b2477c28 tests/robustness: Retry injecting failpoint
Signed-off-by: Marek Siarkowicz <siarkowicz@google.com>
2023-06-17 17:30:20 +02:00
Marek Siarkowicz
96987d8b5e tests/robustness: Implement stale reads without validation
For now we just validate stale read revision, but not response content.
Reason is that etcd model only stores latest version of keys, and no
history like real etcd.

Validating stale read contents needs to be done outside of model
as storing whole history is just to costly for linearization validation.

Signed-off-by: Marek Siarkowicz <siarkowicz@google.com>
2023-06-16 21:17:37 +02:00
Marek Siarkowicz
6f2a5b710f
Merge pull request #16096 from serathius/robustness-limit-to-fresh-state
tests/robustness: Limit model to start only from fresh state
2023-06-16 21:15:48 +02:00
Marek Siarkowicz
57258759c6
Merge pull request #16085 from serathius/robustness-disable-blackhole
tests/robustness: Disable blackhole until snapshot for v3.5 and v3.4
2023-06-16 21:15:26 +02:00
Marek Siarkowicz
ea3255b477 tests/robustness: Limit model to start only from fresh state
It is just to complicated to support starting from non-empty etcd.
Existing implementation was very naive to assume that we can build
full state from just one request. We might consider implementing
validation of non-empty history in future, but for now settting
this limit should clean up the code and speed up development.

Signed-off-by: Marek Siarkowicz <siarkowicz@google.com>
2023-06-16 13:50:20 +02:00
Marek Siarkowicz
fb16bca44a tests/robustness: Disable blackhole until snapshot for v3.5 and v3.4
Signed-off-by: Marek Siarkowicz <siarkowicz@google.com>
2023-06-16 13:26:24 +02:00
Marek Siarkowicz
34cbf4cd6f tests/robustness: Allow errors and unknown responses in deterministic model
Signed-off-by: Marek Siarkowicz <siarkowicz@google.com>
2023-06-15 22:25:48 +02:00
Marek Siarkowicz
7d27e33a12
Merge pull request #16079 from serathius/robustness-range-request
Robustness range request
2023-06-15 10:04:04 +02:00
Benjamin Wang
899a51e110
Merge pull request #16073 from pchan/bump_dependency2
manual dependency bump
2023-06-14 20:51:01 +01:00
Marek Siarkowicz
6979318108 tests/robustness: Make Range a proper request type to allow setting Range.Revision != 0 for stale reads
Signed-off-by: Marek Siarkowicz <siarkowicz@google.com>
2023-06-14 13:55:45 +02:00
Marek Siarkowicz
974655e02c tests/robustness: Rename operations const to separate from RequestType
Signed-off-by: Marek Siarkowicz <siarkowicz@google.com>
2023-06-14 13:24:14 +02:00
Marek Siarkowicz
da49157b20
Merge pull request #16066 from serathius/robusness-validate
tests/robustness: Extract validation to separate package
2023-06-14 11:54:46 +02:00
Marek Siarkowicz
7bbc738ec4 tests/robustness: Extract validation to separate package
Signed-off-by: Marek Siarkowicz <siarkowicz@google.com>
2023-06-14 09:14:27 +02:00
Marek Siarkowicz
a081d52bd4
Merge pull request #16075 from serathius/robustness-randomize-get
tests/robustness: Move get to list of randomized operations
2023-06-14 08:49:04 +02:00
Marek Siarkowicz
a268a67e45 tests/robustness: Move get to list of randomized operations 2023-06-13 21:09:05 +02:00
Marek Siarkowicz
455c0c6b81
Merge pull request #16041 from geetasg/pr
Update downgrade test to use a snapshot
2023-06-13 20:35:29 +02:00
Prasad Chandrasekaran
3a8c6d749f manual dependency bump
Signed-off-by: Prasad Chandrasekaran <prasadc@vmware.com>
2023-06-13 23:28:47 +05:30
Geeta Gharpure
06350aba43 Update downgrade test to use snapshot
Signed-off-by: Geeta Gharpure <geetagh@amazon.com>
2023-06-13 17:23:49 +00:00
Marek Siarkowicz
a6ab774458
Merge pull request #16044 from serathius/robusness-empty
tests/robustness: Assume starting from empty etcd instead of throwing out first failed request
2023-06-12 10:18:34 +02:00
Marek Siarkowicz
b366cda70f
Merge pull request #16046 from serathius/robusness-test-diff
tests/robustness: Provide a response diff in model test to make debugging easier
2023-06-12 10:15:43 +02:00
Benjamin Wang
20c4247d2c
Merge pull request #16037 from chaochn47/uds_e2e_test
add uds test cases into e2e TestAuthority
2023-06-12 14:45:59 +08:00
Marek Siarkowicz
61736c329d
Merge pull request #16045 from serathius/robusness-test-name
tests/robustness: Put traffic type on second place before cluster size in test name
2023-06-10 14:30:47 +02:00
Marek Siarkowicz
f410c6e6df tests/robustness: Provide a response diff in model test to make debugging easier
Signed-off-by: Marek Siarkowicz <serathius@users.noreply.github.com>
2023-06-09 22:42:17 +02:00
Marek Siarkowicz
53af854871 tests/robustness: Assume starting from empty etcd instead of throwing out first failed request
Signed-off-by: Marek Siarkowicz <serathius@users.noreply.github.com>
2023-06-09 22:38:16 +02:00
Marek Siarkowicz
f91f6d8414 tests/robustness: Put traffic type on second place before cluster size in test name
Signed-off-by: Marek Siarkowicz <serathius@users.noreply.github.com>
2023-06-09 22:30:53 +02:00
Marek Siarkowicz
b80fb0a1ce tests/e2e: Use epc.Etcdctl
Signed-off-by: Marek Siarkowicz <serathius@users.noreply.github.com>
2023-06-09 20:39:57 +02:00
Chao Chen
e6c8bf82e0 add uds test cases into e2e TestAuthority
Signed-off-by: Chao Chen <chaochn@amazon.com>
2023-06-08 15:54:30 -07:00
Benjamin Wang
6c5fde5138
Merge pull request #15985 from CaojiamingAlan/check_revision_before_write_hash
Check ScheduledCompactKeyName and FinishedCompactKeyName before writing hash
2023-06-08 10:10:45 +08:00
caojiamingalan
b9e30bf878 etcdserver: add e2e test to reproduce the incorrect hash issue when resuming scheduled compaction.
check ScheduledCompactKeyName and FinishedCompactKeyName
before writing hash to hashstore. If they do not match, then it means this compaction has once been interrupted and its hash value is invalid. In such cases, we won't write the hash values to the hashstore, and avoids the incorrect corruption alarm.

Signed-off-by: caojiamingalan <alan.c.19971111@gmail.com>
2023-06-07 19:54:09 -05:00
Chao Chen
b2c39fc8e6 2023-06-06: bump up dependencies update identified by dependabot
Signed-off-by: Chao Chen <chaochn@amazon.com>
2023-06-06 20:18:44 -07:00
Marek Siarkowicz
7cc98e6392
Merge pull request #15959 from serathius/robustness-watch-client
tests/robustness: Use traffic.RecordingClient in watch
2023-05-26 17:45:57 +02:00
Marek Siarkowicz
16bf0f6641 tests/robustness: Use traffic.RecordingClient in watch
Signed-off-by: Marek Siarkowicz <siarkowicz@google.com>
2023-05-25 22:17:23 +02:00
Bogdan Kanivets
ef91e8ae78 dependency: bump github.com/stretchr/testify from 1.8.2 to 1.8.3
Signed-off-by: Bogdan Kanivets <bkanivets@apple.com>
2023-05-24 23:58:13 -07:00
Marek Siarkowicz
04346e870f
Merge pull request #15909 from serathius/robustness-unique-revision
tests/robustness: Expect revisions to be unique for Kubernetes Traffic
2023-05-24 09:20:17 +02:00
Marek Siarkowicz
4872b679a5 tests/robustness: Expect revions to be unique for Kubernetes Traffic
Signed-off-by: Marek Siarkowicz <siarkowicz@google.com>
2023-05-23 15:51:10 +02:00
Wei Fu
befb283cca tests: deflake TestKVDelete/ClientAutoTLS
For the sub test TestKVDelete/ClientAutoTLS, the timeout might be caused
by IO or task scheduled. It's really hard to reproduce this case. And
we don't add `VERBOSE=1` for e2e test, the pipeline doesn't show the
`EXPECT_DEBUG` log in time. It's also hard to debug when flaky case
show. So, this patch will enable `VERBOSE=1` to get timestamp in time.

And the one operation `del a c -w json` will be performed after two seconds
delay, we can increase the timeout from 15s to 30s just in case that the
put or del operations take more time in unstable env.

```
Warning: Keys between "a" and "c" will be deleted. Please interrupt the
command within next 2 seconds to cancel.
```

Signed-off-by: Wei Fu <fuweid89@gmail.com>
2023-05-19 18:22:18 +08:00
Marek Siarkowicz
f3c9db9c46
Merge pull request #15893 from serathius/robustness-validate-client-watch
tests/robustness: Validate all etcd watches opened to etcd
2023-05-16 10:51:55 +02:00
Marek Siarkowicz
efcbd95f71
Merge pull request #15889 from serathius/robustness-model-test
tests/robustness: Unify model test cases
2023-05-16 10:41:05 +02:00
Marek Siarkowicz
6429f47631 tests/robustness: Validate all etcd watches opened to etcd
Signed-off-by: Marek Siarkowicz <siarkowicz@google.com>
2023-05-16 10:28:01 +02:00
Marek Siarkowicz
112aad1ea7 tests/robustness: Unify model test cases
Signed-off-by: Marek Siarkowicz <siarkowicz@google.com>
2023-05-16 10:13:08 +02:00
James Blair
5a5b5a1c5d
dependency: bump github.com/prometheus/client_golang from 1.15.0 to 1.15.1
Signed-off-by: James Blair <mail@jamesblair.net>
2023-05-16 09:26:44 +12:00
James Blair
1798730cd8
dependency: bump golang.org/x/crypto from 0.8.0 to 0.9.0
Signed-off-by: James Blair <mail@jamesblair.net>
2023-05-16 08:39:19 +12:00
Marek Siarkowicz
6e53792568 tests/robustness: Implement Kubernetes optimistic concurrency operations
Signed-off-by: Marek Siarkowicz <siarkowicz@google.com>
2023-05-15 13:45:27 +02:00
Marek Siarkowicz
911c40a347 tests/robustness: Implement kubernetes list watch protocol
Signed-off-by: Marek Siarkowicz <siarkowicz@google.com>
2023-05-15 10:11:05 +02:00
Marek Siarkowicz
05ed91d76d
Merge pull request #15892 from lavacat/main-mono-clock-watch
tests/robustness: use monotonic clock for watch events
2023-05-15 09:25:41 +02:00
Benjamin Wang
2df32102ca
Merge pull request #15835 from yellowzf/grpcproxy_fix_memberlist_results_not_update_when_proxy_node_down
grpcproxy: fix memberlist results not update when proxy node down
2023-05-15 13:34:05 +08:00
yellowzf
ca221208d2 grpcproxy: fix memberlist results not update when proxy node down
If start grpc proxy with --resolver-prefix, memberlist will return all alive proxy nodes, when one grpc proxy node is down, it is expected to not return the down node, but it is still return

Signed-off-by: yellowzf <zzhf3311@163.com>
2023-05-15 10:59:02 +08:00