1710 Commits

Author SHA1 Message Date
Chao Chen
405862e807 Fix event loss after compaction
Signed-off-by: Chao Chen <chaochn@amazon.com>
2024-03-15 14:22:37 -07:00
Benjamin Wang
d639abe1aa
Merge pull request #17582 from ivanvc/address-client-var-naming-lint-rule
client: address golangci var-naming issues
2024-03-15 09:03:15 +00:00
Ivan Valdes
d98ff0d4ff
pkg: address golangci var-naming issues
Signed-off-by: Ivan Valdes <ivan@vald.es>
2024-03-14 21:17:37 -07:00
Ivan Valdes
578b784dcd
client: address golangci var-naming issues
Signed-off-by: Ivan Valdes <ivan@vald.es>
2024-03-14 20:47:32 -07:00
Ivan Valdes
ef38180ae7
dependency: bump github.com/rivo/uniseg from 0.2.0 to 0.4.7
Signed-off-by: Ivan Valdes <ivan@vald.es>
2024-03-12 11:12:07 -07:00
Ivan Valdes
0024569c7c
dependency: bump github.com/stretchr/testify from 1.8.4 to 1.9.0
Signed-off-by: Ivan Valdes <ivan@vald.es>
2024-03-11 11:50:27 -07:00
Ivan Valdes
3996eb5a3c
dependency: bump google.golang.org/grpc from 1.62.0 to 1.62.1
Signed-off-by: Ivan Valdes <ivan@vald.es>
2024-03-11 11:41:17 -07:00
Ivan Valdes
7fae54b302
dependency: bump github.com/prometheus/common from 0.49.0 to 0.50.0
Signed-off-by: Ivan Valdes <ivan@vald.es>
2024-03-11 11:32:03 -07:00
Marek Siarkowicz
ddf54715bf
Merge pull request #17557 from serathius/progressrequest-new-watch
Fix progress notification for watch that doesn't get any events
2024-03-11 15:42:13 +01:00
Marek Siarkowicz
6103504d4b Fix progress notification for watch that doesn't get any events
When implementing the fix for progress notifications
(https://github.com/etcd-io/etcd/pull/15237) we made a incorrect
assumption that that unsynched watches will always get at least one event.

Unsynched watches include not only slow watchers, but also newly created
watches that requested current or older revision. In case that non of the events
match watch filter, those newly created watches might become synched
without any event going through.

Signed-off-by: Marek Siarkowicz <siarkowicz@google.com>
2024-03-11 12:11:09 +01:00
Ivan Valdes
0c6b6ac951
dependency: bump google.golang.org/protobuf from 1.32.0 to 1.33.0
Addresses CVE-2024-24786 (https://pkg.go.dev/vuln/GO-2024-2611)

Signed-off-by: Ivan Valdes <ivan@vald.es>
2024-03-07 09:13:28 -08:00
Ivan Valdes
04ef9dcef8
dependency: bump github.com/prometheus/common from 0.47.0 to 0.49.0
Signed-off-by: Ivan Valdes <ivan@vald.es>
2024-03-07 09:13:28 -08:00
Ivan Valdes
60da279da4
dependency: bump go.opentelemetry.io/otel/sdk from 1.23.1 to 1.24.0
Signed-off-by: Ivan Valdes <ivan@vald.es>
2024-03-07 09:13:28 -08:00
Benjamin Wang
a481256c8f
Merge pull request #17393 from dusk125/go1.22
Migrate to go1.22
2024-03-07 10:15:10 +00:00
Allen Ray
bb4b70bbb2 Migrate to go1.22
Signed-off-by: Allen Ray <alray@redhat.com>
2024-03-06 17:15:36 -05:00
Benjamin Wang
a8c743fafa Add election test with auth enabled
Signed-off-by: Benjamin Wang <benjamin.ahrtr@gmail.com>
2024-03-05 19:49:49 +00:00
James Blair
e0955afa40
depdendency: bump google.golang.org/grpc from 1.61.1 to 1.62.0.
Signed-off-by: James Blair <mail@jamesblair.net>
2024-02-28 21:08:42 +13:00
James Blair
170948f681
depdendency: bump go.opentelemetry.io/otel from 1.23.1 to 1.24.0.
Signed-off-by: James Blair <mail@jamesblair.net>
2024-02-28 21:03:45 +13:00
Benjamin Wang
cea3f4d71d
Merge pull request #17466 from jmhbnz/weekly-dependency-update
[2024-02-20] Bump dependencies identified by dependabot
2024-02-22 18:13:40 +00:00
Madhav Jivrajani
0b27570368 tests/robustness: use WithRequireLeader in Kubernetes traffic
Kubernetes uses WithRequireLeader to modify the context passed
to the Watch() and RequestProgress() calls in order to ensure
that a leader is present in the cluster before serving the request.

This commit mimics that behaviour in the Kubernetes traffic.

Signed-off-by: Madhav Jivrajani <madhav.jiv@gmail.com>
2024-02-22 15:01:33 +05:30
James Blair
9713761c9d
depdendency: github.com/prometheus/common from 0.46.0 to 0.47.0.
Signed-off-by: James Blair <mail@jamesblair.net>
2024-02-22 22:25:22 +13:00
James Blair
f8141bc039
depdendency: go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc from 0.47.0 to 0.48.0.
Signed-off-by: James Blair <mail@jamesblair.net>
2024-02-22 22:25:22 +13:00
James Blair
df1727f3ea
depdendency: github.com/prometheus/client_model from 0.5.0 to 0.6.0.
Signed-off-by: James Blair <mail@jamesblair.net>
2024-02-22 22:25:22 +13:00
James Blair
08cacf1984
depdendency: google.golang.org/grpc from 1.61.0 to 1.61.1.
Signed-off-by: James Blair <mail@jamesblair.net>
2024-02-22 22:25:22 +13:00
Marek Siarkowicz
3a351c2fec Revert "tests/robustness: check for compaction before prevKV validation"
This reverts commit 5d7f58d14be1da5135d158dad6fc43391cbf6283.

Signed-off-by: Marek Siarkowicz <siarkowicz@google.com>
2024-02-21 16:15:40 +01:00
Madhav Jivrajani
5d7f58d14b tests/robustness: check for compaction before prevKV validation
We can check for the condition that Kubernetes checks for, i.e.
prevKV can be nil iff the event is not a create a event, only if
we know whether compaction has occured or not. If compaction has
occured, prevKV can be nil and that is completely valid.

This commit checks if compaction took place during the test run
by querying the /metrics endpoint. Based on if compaction occured,
we now check the Kubernetes condition in the prevKV robustness test.

Signed-off-by: Madhav Jivrajani <madhav.jiv@gmail.com>
2024-02-19 17:05:59 +05:30
vivekpatani
2eda06ac18 *: update logrus to v1.9.3
- update logrus to address PRISMA-2023-0056
- https://github.com/etcd-io/etcd/issues/17268

Signed-off-by: vivekpatani <9080894+vivekpatani@users.noreply.github.com>
2024-02-17 21:35:54 -08:00
Marek Siarkowicz
840d486923
Merge pull request #17426 from MadhavJivrajani/robustness-tests-cleanup
tests/robustness: refactors, cleanups and followups
2024-02-15 09:23:05 +01:00
Benjamin Wang
b0d0476731
Merge pull request #17423 from nitishfy/Nitish/error-validation
feat: add `TestNoErrorLogsDuringNormalOperations` e2e test to validate error logs during etcd bootstrap
2024-02-14 14:44:41 +00:00
NitishKumar06
3f98ee77d0 etcdserver: add TestErrorLogs test to check for error logs
Signed-off-by: NitishKumar06 <justnitish06@gmail.com>

fix static analysis check

Signed-off-by: NitishKumar06 <justnitish06@gmail.com>

minor fixes

Signed-off-by: NitishKumar06 <justnitish06@gmail.com>
2024-02-14 18:50:04 +05:30
Madhav Jivrajani
b51a834645 tests/robustness: allow persisting result reports for successful runs
Signed-off-by: Madhav Jivrajani <madhav.jiv@gmail.com>
2024-02-14 16:28:47 +05:30
Madhav Jivrajani
cdd018ad2a tests/robustness: add a robustness test for validating create events
Split off valdiating create events from the prevKV test.
The added test tests the following two:
- A create event should not exist in our past history
- A non-create event should exist in our past history

Signed-off-by: Madhav Jivrajani <madhav.jiv@gmail.com>
2024-02-14 16:28:44 +05:30
Madhav Jivrajani
4fa07a1c8a tests/robustness: make merging histories work on []PersistedEvent
Event histories after merging serve as an authorotative list of
events that can be seen as ones persisted by etcd, we don't need
PrevValue as part of it.

Signed-off-by: Madhav Jivrajani <madhav.jiv@gmail.com>
2024-02-14 15:44:08 +05:30
Marek Siarkowicz
83817ac786
Merge pull request #17352 from MadhavJivrajani/with-prev-key-robustness-test
tests/robustness: add robustness test for watch with PrevKV()
2024-02-14 09:24:33 +01:00
Madhav Jivrajani
9aad6700d5 tests/robustness: add robustness test for watch with PrevKV()
Kubernetes relies on the PrevKV() option in the watches it opens
against etcd. This commit adds a robustness test to validate the
same.

A watch response returned with PrevKV() is valid if:
The value in current event's prevKV matches the previous
event's value of the same key if this is not a create event.

There are cases where there can be a prevKV for a create event
as well, for example if a watch is opened after the key is creatd.
Since we don't simulate for that, we don't check for that.

Further, this adjusts revision numbers such that we can successfully create
a new replay. Needed now since we will have unit tests with
and without PrevKV co-existing and we requite creation of a
new replay everytime we validate PrevKV.

We also regenerate test data with so that prevKV exists in it

Signed-off-by: Madhav Jivrajani <madhav.jiv@gmail.com>
2024-02-13 22:55:57 +05:30
Benjamin Wang
a6d72d5fbc dependency: bump golang.org/x/net from 0.20.0 to 0.21.0
Signed-off-by: Benjamin Wang <benjamin.ahrtr@gmail.com>
2024-02-13 09:32:55 +00:00
Benjamin Wang
dfff80a89e dependency: bump golang.org/x/crypto from 0.18.0 to 0.19.0
Signed-off-by: Benjamin Wang <benjamin.ahrtr@gmail.com>
2024-02-13 09:32:55 +00:00
Benjamin Wang
236e8ca881 dependency: bump go.opentelemetry.io/otel from 1.22.0 to 1.23.1
Signed-off-by: Benjamin Wang <benjamin.ahrtr@gmail.com>
2024-02-13 09:32:55 +00:00
Benjamin Wang
5c1b43c079 Dependency: bump golang.org/x/sys from 0.16.0 to 0.17.0
Signed-off-by: Benjamin Wang <benjamin.ahrtr@gmail.com>
2024-02-13 09:32:55 +00:00
Benjamin Wang
5b2a9e2ab3 Remove the unused AuthTokenTTL parameter from integration test
Signed-off-by: Benjamin Wang <benjamin.ahrtr@gmail.com>
2024-02-11 14:09:43 +00:00
Benjamin Wang
25f91b4e50
Merge pull request #17384 from mitake/watch-auth-str
Remove string dependent error handling in watch and auth
2024-02-08 13:54:46 +00:00
Benjamin Wang
99e7a4cd89
Merge pull request #17392 from sharathsivakumar/shsi/bump_deps_15
Manually bump dependencies
2024-02-07 16:41:54 +00:00
Benjamin Wang
29600058d7
Merge pull request #17287 from nitishfy/Nitish/memberReplaceWithLearner
feat: add `memberReplaceLearnerTest` test
2024-02-07 16:32:39 +00:00
Sharath Sivakumar
759d88a990
dependency: bump github.com/grpc-ecosystem/grpc-gateway/v2 from 2.19.0 to 2.19.1
Signed-off-by: Sharath Sivakumar <mailssr9@gmail.com>
2024-02-07 16:15:49 +01:00
NitishKumar06
70cc19aad5 etcdserver: add memberReplaceLearnerTest to improve testing coverage
Signed-off-by: NitishKumar06 <justnitish06@gmail.com>

get learner member id

Signed-off-by: NitishKumar06 <justnitish06@gmail.com>

get learner member id

Signed-off-by: NitishKumar06 <justnitish06@gmail.com>

check for edge case

Signed-off-by: NitishKumar06 <justnitish06@gmail.com>

modify testcase to use var declaration

Signed-off-by: NitishKumar06 <justnitish06@gmail.com>

remove shadow delcaration of variables

Signed-off-by: NitishKumar06 <justnitish06@gmail.com>

resolve minor fixes

Signed-off-by: NitishKumar06 <justnitish06@gmail.com>
2024-02-06 20:05:16 +05:30
Hitoshi Mitake
617f1df443 Remove string dependent error handling in watch and auth
Signed-off-by: Hitoshi Mitake <h.mitake@gmail.com>
2024-02-06 19:25:53 +09:00
Sharath Sivakumar
60d642332c
dependency: bump github.com/cheggaaa/pb/v3 from 3.1.4 to 3.1.5
Signed-off-by: Sharath Sivakumar <mailssr9@gmail.com>
2024-02-01 14:18:36 +01:00
Sharath Sivakumar
9ec752d0f3
dependency: bump google.golang.org/grpc from 1.60.1 to 1.61.0
Signed-off-by: Sharath Sivakumar <mailssr9@gmail.com>
2024-02-01 13:57:32 +01:00
Sharath Sivakumar
aa81e57855
dependency: bump go.opentelemetry.io/proto/otlp from 1.0.0 to 1.1.0
Signed-off-by: Sharath Sivakumar <mailssr9@gmail.com>
2024-02-01 13:51:29 +01:00
Madhav Jivrajani
f0f4e8a4e8 tests/robustness: fix out of index panic in model replay
Signed-off-by: Madhav Jivrajani <madhav.jiv@gmail.com>
2024-02-01 16:14:35 +05:30