812 Commits

Author SHA1 Message Date
James Blair
bf51a53a7e
version: bump up to 3.5.14 2024-05-30 06:33:09 +12:00
Seena Fallah
8bc3271af4
config: support AllowedCN and AllowedHostname through config file
Allow setting AllowedCN and AllowedHostname tls fields through config file for peer transport security.

Signed-off-by: Seena Fallah <seenafallah@gmail.com>
2024-05-23 23:37:11 +05:30
Madhav Jivrajani
474031588a .*: sync go toolchain version and add ability to verify versions
This commit adds a script to sync the version present in .go-version
across all go.mod files as the toolchain directive. As part of that,
this commit also modifies go.mod files that did not have synced toolchain
directives.

Additionally, this also adds a script to verify all toolchain and go
directives against the version present in .go-version as follows:
(1) The go directive <= version in .go-version
(2) The toolchain directive == version in .go-version

This script runs as part of the `make verify` target, making it run
as a presbumit by default.

Signed-off-by: Madhav Jivrajani <madhav.jiv@gmail.com>
2024-05-16 14:45:42 +05:30
Ivan Valdes
9e1dadd748
etcdutl: Fix snapshot restore memory alloc issue
When running the snapshot command, allow receiving an initial memory map
allocation for the database, avoiding future memory allocation issues.

Backports commit: be2883321240340479f9e334bc4a3b2959ad7639 / PR: #17277

Co-authored-by: Fatih USTA <fatihusta86@gmail.com>
Signed-off-by: Ivan Valdes <ivan@vald.es>
2024-05-09 21:41:23 -04:00
Ivan Valdes
6abc349dc9
server: Implement WithMmapSize option for backend config
Accept a third argument for NewDefaultBackend for overrides to the
BackendConfig.
Add a new function, WithMmapSize, which modifies the backend config to
provide a custom InitiamMmapSize.

Backports commit: d69adf45f9e95661966204460f019b8164aaef12 / PR: #17277

Signed-off-by: Ivan Valdes <ivan@vald.es>
2024-05-09 21:41:16 -04:00
Marek Siarkowicz
0f0af63eaa
Merge pull request #17914 from tjungblu/backport_35_grpc_defragserv
[3.5] gRPC health server sets serving status to NOT_SERVING on defrag
2024-05-07 09:14:05 +02:00
Thomas Jungblut
a5eec4d78d Bump bbolt to 1.3.10 for 3.5
Signed-off-by: Thomas Jungblut <tjungblu@redhat.com>
2024-05-06 12:02:49 +02:00
Thomas Jungblut
cee181d1ab v3rpc: run health notifier to listen on online defrag state change
Backport from 3.6 in #16836

Co-authored-by: Chao Chen <chaochn@amazon.com>
Signed-off-by: Thomas Jungblut <tjungblu@redhat.com>
2024-05-06 10:03:08 +02:00
Thomas Jungblut
750bc0b1e4 gRPC health server sets serving status to NOT_SERVING on defrag
gRPC health server sets serving status to NOT_SERVING on defrag
Backport from 3.6 in #16278

Co-authored-by: Chao Chen <chaochn@amazon.com>
Signed-off-by: Thomas Jungblut <tjungblu@redhat.com>
2024-04-30 15:09:51 +02:00
Wei Fu
0af22abc6c server/mvcc: should update currentRev in revMu
Signed-off-by: Wei Fu <fuweid89@gmail.com>
2024-04-24 12:28:20 +08:00
Wei Fu
c06b17b9ff server/storage: update currentRev if scheduledCompact > currentRev
Signed-off-by: Wei Fu <fuweid89@gmail.com>
(cherry picked from commit 9ea234913a99670d18b66aa23915781f89713177)
Signed-off-by: Wei Fu <fuweid89@gmail.com>
2024-04-24 12:25:19 +08:00
Wei Fu
6b034466aa server/mvcc: introduce compactBeforeSetFinishedCompact failpoint
Signed-off-by: Wei Fu <fuweid89@gmail.com>
2024-04-24 12:14:27 +08:00
Benjamin Wang
adf1c3f291 Update the compaction log when bootstrap and update compact's signature
Actually the compact() never return an error, so remove the second return
parameter.

Signed-off-by: Benjamin Wang <benjamin.ahrtr@gmail.com>
2024-04-21 13:17:07 +01:00
Marek Siarkowicz
91e9dd33e4
Merge pull request #17808 from siyuanfoundation/3.5-downgrade-test
[3.5] add experimental-snapshot-catchup-entries flag
2024-04-19 08:31:13 +02:00
Siyuan Zhang
c391d69b08 test: add checking snapshot be sent in mix_version_test.
Signed-off-by: Siyuan Zhang <sizhang@google.com>
2024-04-18 19:08:05 +00:00
Chun-Hung Tseng
9331ee32e1
[backport-3.5] server: ignore raft messages if member id mismatch #17078
Signed-off-by: Chun-Hung Tseng <henrybear327@gmail.com>
2024-04-17 13:50:23 +02:00
Siyuan Zhang
464df4a979 add experimental-snapshot-catchup-entries flag.
Signed-off-by: Siyuan Zhang <sizhang@google.com>
2024-04-15 17:04:44 -07:00
Benjamin Wang
b671991c9b
Merge pull request #17616 from Akiqqqqqqq/feature-wal-write-metrics
[3.5] feat: add wal write system call metrics observation
2024-04-08 08:26:44 +01:00
Qiuyu Wu
51f3134355 feat: observe wal write at one time
Signed-off-by: Qiuyu Wu <qiuyu.wu@shopee.com>
2024-04-06 22:58:32 +08:00
Wei Fu
94a1d0c1b5 *: LeaseTimeToLive returns error if leader changed
The old leader demotes lessor and all the leases' expire time will be
updated. Instead of returning incorrect remaining TTL, we should return
errors to force client retry.

Cherry-pick: d3bb6f688b4643155b4a9924cec726bdc76a1306

Signed-off-by: Wei Fu <fuweid89@gmail.com>
2024-04-04 22:33:05 +08:00
James Blair
c9063a0dcd
version: bump up to 3.5.13 2024-03-30 07:27:31 +13:00
Chao Chen
46d2caae1e [release-3.5] backport fix watch event loss after compaction
Signed-off-by: Chao Chen <chaochn@amazon.com>
2024-03-18 18:41:17 -07:00
Marek Siarkowicz
579b22cf3a 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 20:18:26 +01:00
Ivan Valdes
e6d95c8457
dependency: bump google.golang.org/protobuf to v1.33.0
Signed-off-by: Ivan Valdes <ivan@vald.es>
2024-03-07 16:03:12 -08:00
Benjamin Wang
d76d8479ee Bump bbolt to 1.3.9 for 3.5
Signed-off-by: Benjamin Wang <benjamin.ahrtr@gmail.com>
2024-02-24 15:38:49 +00:00
vivekpatani
f1d1029cc2 dependency: bump github.com/sirupsen/logrus to v1.9.3
Signed-off-by: vivekpatani <9080894+vivekpatani@users.noreply.github.com>
2024-02-23 16:24:13 -08:00
Benjamin Wang
5cc72391b0
Merge pull request #15940 from HubertZhang/backport-12469-3.5
[release-3.5]pkg/types: Support Unix sockets in NewURLS
2024-02-20 09:45:10 +00:00
Benjamin Wang
9b9c04907e
Merge pull request #17447 from halleyshx/add-keepalive-clientParams-to-grpcproxy-rel3.5
[3.5] Added client keepalive arguments to the grpc-proxy
2024-02-20 09:44:28 +00:00
Chao Chen
a1aaa51cf1 add uds test cases into e2e TestAuthority
Signed-off-by: Chao Chen <chaochn@amazon.com>
2024-02-19 13:26:15 +00:00
Benjamin Wang
9ffba74e66
Merge pull request #17425 from ivanvc/release-3.5-backport-ignore-old-leaders-leases-revoking-request
[3.5] backport ignore old leaders leases revoking requests
2024-02-18 14:40:20 +00:00
shihuixing
31f097ee9e added dial-keepalive-time、dial-keepalive-timeout、permit-without-stream arguments to the grpc-proxy
Signed-off-by: shihuixing <shihuixing@jd.com>
2024-02-18 20:44:25 +08:00
Ivan Valdes
4a90575ab2
Backport ignore old leader's leases revoking request
Backported PR #16822, commits f7e488dc9262685d6624755e0d3bb0a655863248,
67f17166bf2ba337dafb8e0ea8eea5f74a990767,
and f7ff898fd6c2d6dbb54278343073aa4fa5f46a03

Signed-off-by: Ivan Valdes <ivan@vald.es>
2024-02-17 22:16:53 -08:00
vivekpatani
b9b4f1bd1b server: fix comment to match function name
- goword checks fail if function name mismatches with comment
- https://github.com/etcd-io/etcd/issues/17400

Signed-off-by: vivekpatani <9080894+vivekpatani@users.noreply.github.com>
2024-02-15 19:46:22 -08:00
Benjamin Wang
76e7fe7057
Merge pull request #17382 from fuweid/backport-17365-to-35
[3.5] etcdserver: drain leaky goroutines before test completed
2024-02-06 15:54:08 +00:00
Wei Fu
a965801b6e etcdserver: drain leaky goroutines before test completed
Signed-off-by: Wei Fu <fuweid89@gmail.com>
2024-02-06 12:11:33 +08:00
Allen Ray
3d64877dc2 [3.5] Update to go1.21
Signed-off-by: Allen Ray <alray@redhat.com>
2024-02-02 14:25:53 -05:00
Marek Siarkowicz
e7b3bb6cca version: bump up to 3.5.12 2024-01-31 11:32:22 +01:00
Marek Siarkowicz
8599d48f80 Bump golang.org/x/crypto to v0.17+ to address CVE-2023-48795
This is the minimal set of package updates I get after running:

./scripts/update_dep.sh golang.org/x/crypto v0.17.0
make

Signed-off-by: Marek Siarkowicz <siarkowicz@google.com>
2024-01-30 12:02:49 +01:00
Benjamin Wang
0f494e02fa test: fix TestHashKVWhenCompacting: ensure all goroutine finished
Signed-off-by: Benjamin Wang <benjamin.ahrtr@gmail.com>
2024-01-25 13:32:03 +00:00
Benjamin Wang
926d0227bd print error log when creating peer listener failed
Signed-off-by: Benjamin Wang <benjamin.ahrtr@gmail.com>
2024-01-24 13:50:38 +00:00
Rahul More
2c3b614090 mvcc: Printing etcd backend database related metrics inside scheduleCompaction function
Backporting commit 21bbc82 in etcd 3.5
To improve traceability of backend database usage, Added below parameter
related to backend database usage metrics inside scheduledCompaction
function.
current-db-size-bytes
current-db-size
current-db-size-in-use-bytes
current-db-size-in-use

Signed-off-by: Rahul More <rahulbapumore@gmail.com>
2024-01-22 19:10:20 +05:30
Siyuan Zhang
2d531a300a commit bbolt transaction if there is any pending deleting operations
Signed-off-by: Siyuan Zhang <sizhang@google.com>
2024-01-11 13:34:14 -08:00
Siyuan Zhang
f219ab445e add tests to test tx delete consistency.
Signed-off-by: Siyuan Zhang <sizhang@google.com>
2024-01-11 13:29:54 -08:00
Marek Siarkowicz
f3a27b3745 Don't flock snapshot files
Signed-off-by: Marek Siarkowicz <siarkowicz@google.com>
2024-01-08 15:06:12 +01:00
Ishan Tyagi
0ac8e50a1a Add a unit tests and missing flags in etcd help.
Signed-off-by: ishan16696 <ishan.tyagi@sap.com>
2024-01-05 14:46:42 +05:30
Ishan Tyagi
f87048a92b Add missing flag in etcd help.
Signed-off-by: ishan16696 <ishan.tyagi@sap.com>
2024-01-02 18:08:20 +05:30
Marek Siarkowicz
d6d263ac8d Check if be is nil to avoid panic when be is overriden with nil by recoverSnapshotBackend on line 517
Signed-off-by: Marek Siarkowicz <siarkowicz@google.com>
2023-12-20 11:41:54 +01:00
Marek Siarkowicz
a2e9dc8cc0 Don't redeclare err and snapshot variable, fixing validation of consistent index and closing database on defer
`err` variable shared throughout the NewServer function and used on line
396 to defer decision whether backend should be closed when starting
the server failed.

`snapshot` variable is first defined 407, redeclared locally on line 496 and later
again used on line 625. Creation of local variable is a bug introduced
in https://github.com/etcd-io/etcd/pull/11888.

Signed-off-by: Marek Siarkowicz <siarkowicz@google.com>
2023-12-20 11:31:47 +01:00
Siyuan Zhang
b8d5e79fc1 [3.5] backport health check e2e tests.
Signed-off-by: Siyuan Zhang <sizhang@google.com>
2023-12-07 09:51:39 -08:00
Marek Siarkowicz
3b252db4f6 version: bump up to 3.5.11 2023-12-07 11:29:12 +01:00