Piotr Tabor
26f9b4be8f
e2e tests were leaking 'defunc' etcdctl processes.
...
The commit ensures that spawned etcdctl processes are "closed",
so they perform proper os wait processing.
This might have contributed to file-descriptor/open-files limit being
exceeded.
2021-01-11 11:55:30 +01:00
Piotr Tabor
e2a65bee6e
Avoid 'interactive prompt' for root password in etcd tests.
...
Before:
```
{"level":"info","ts":1610273495.3791487,"caller":"agent/handler.go:668","msg":"cleaning up page cache"}
{"level":"info","ts":1610273495.3793094,"caller":"agent/handler.go:94","msg":"created etcd log file","path":"/tmp/etcd-functional-2/etcd.log"}
{"level":"info","ts":1610273495.379328,"caller":"agent/handler.go:668","msg":"cleaning up page cache"}
[sudo] password for ptab:
pam_glogin: invalid password
Sorry, try again.
[sudo] password for ptab:
```
Now the caches are dropped if the current users is in sudoers, bot not
in the other cases.
To be honest I don't see the purpose for dropping the caches at all in
the test.
2021-01-11 10:06:31 +01:00
Piotr Tabor
8ccd4e1146
Fix flaky tests reported due to data race on grpc logging registration.
...
Example:
```
==================
WARNING: DATA RACE
Write at 0x000002178320 by goroutine 575:
google.golang.org/grpc/grpclog.SetLoggerV2()
/home/ptab/private/golang/pkg/mod/google.golang.org/grpc@v1.29.1/grpclog/loggerv2.go:70 +0x444
go.etcd.io/etcd/server/v3/embed.(*Config).setupLogging.func1.1()
/home/ptab/corp/etcd/server/embed/config_logging.go:119 +0x345
sync.(*Once).doSlow()
/usr/lib/google-golang/src/sync/once.go:66 +0x109
sync.(*Once).Do()
/usr/lib/google-golang/src/sync/once.go:57 +0x68
go.etcd.io/etcd/server/v3/embed.(*Config).setupLogging.func1()
/home/ptab/corp/etcd/server/embed/config_logging.go:109 +0x3b1
go.etcd.io/etcd/server/v3/embed.(*Config).setupLogging()
/home/ptab/corp/etcd/server/embed/config_logging.go:174 +0x6af
go.etcd.io/etcd/server/v3/embed.(*Config).Validate()
/home/ptab/corp/etcd/server/embed/config.go:553 +0x55
go.etcd.io/etcd/server/v3/embed.StartEtcd()
/home/ptab/corp/etcd/server/embed/etcd.go:93 +0x84
go.etcd.io/etcd/tests/v3/integration.TestKVWithEmptyValue()
/home/ptab/corp/etcd/tests/integration/v3_kv_test.go:33 +0x18c
testing.tRunner()
/usr/lib/google-golang/src/testing/testing.go:1123 +0x202
Previous read at 0x000002178320 by goroutine 956:
[failed to restore the stack]
Goroutine 575 (running) created at:
testing.(*T).Run()
/usr/lib/google-golang/src/testing/testing.go:1168 +0x5bb
testing.runTests.func1()
/usr/lib/google-golang/src/testing/testing.go:1441 +0xa6
testing.tRunner()
/usr/lib/google-golang/src/testing/testing.go:1123 +0x202
testing.runTests()
/usr/lib/google-golang/src/testing/testing.go:1439 +0x612
testing.(*M).Run()
/usr/lib/google-golang/src/testing/testing.go:1347 +0x3c4
go.etcd.io/etcd/pkg/v3/testutil.MustTestMainWithLeakDetection()
/home/ptab/corp/etcd/pkg/testutil/leak.go:150 +0x38
go.etcd.io/etcd/tests/v3/integration.TestMain()
/home/ptab/corp/etcd/tests/integration/main_test.go:14 +0x272
main.main()
_testmain.go:349 +0x269
Goroutine 956 (finished) created at:
google.golang.org/grpc/internal/transport.newHTTP2Server()
/home/ptab/private/golang/pkg/mod/google.golang.org/grpc@v1.29.1/internal/transport/http2_server.go:288 +0x18a4
google.golang.org/grpc/internal/transport.NewServerTransport()
/home/ptab/private/golang/pkg/mod/google.golang.org/grpc@v1.29.1/internal/transport/transport.go:534 +0x2f5
google.golang.org/grpc.(*Server).newHTTP2Transport()
/home/ptab/private/golang/pkg/mod/google.golang.org/grpc@v1.29.1/server.go:726 +0x2ca
google.golang.org/grpc.(*Server).handleRawConn()
/home/ptab/private/golang/pkg/mod/google.golang.org/grpc@v1.29.1/server.go:693 +0x60f
google.golang.org/grpc.(*Server).Serve.func3()
/home/ptab/private/golang/pkg/mod/google.golang.org/grpc@v1.29.1/server.go:663 +0x4c
==================
...
{"level":"info","ts":"2021-01-09T22:21:04.550+0100","caller":"embed/etcd.go:330","msg":"closed etcd server","name":"default","data-dir":"/tmp/etcd-017337431","advertise-peer-urls":["http://localhost:2380 "],"advertise-client-urls":["http://localhost:2379 "]}
--- FAIL: TestKVWithEmptyValue (1.08s)
v3_kv_test.go:62: my-namespace/foobar = data
v3_kv_test.go:62: my-namespace/foobar1 = data
v3_kv_test.go:62: namespace/foobar1 = data
v3_kv_test.go:72: foobar = data
v3_kv_test.go:72: foobar1 = data
v3_kv_test.go:87: delete keys:2
testing.go:1038: race detected during execution of test
```
2021-01-11 10:06:31 +01:00
Sahdev Zala
c632042bb9
Merge pull request #12489 from zhijianli88/cleanup-tmpfiles
...
Cleanup tmpfiles
2021-01-07 12:26:04 -05:00
Sahdev Zala
a4570a60e7
Merge pull request #12549 from bbiao/bugfix/refresh_token
...
client/v3: clear auth token when encounter ErrInvalidAuthToken
2020-12-29 22:08:14 -05:00
bbiao
af4ef4ec04
client/v3: clear auth token when encounter ErrInvalidAuthToken
...
Old etcdserver which have not apply pr of #12165 will check auth token
even if the request is an Authenticate request.
If the client has a invalid auth token, it will not able to update it's
token, since the Authenticate has a invalid auth token.
This fix clear the auth token when encounter an ErrInvalidAuthToken to
talk with old version etcd servers.
Fix #12385 with #12165 and #12264
2020-12-27 11:08:22 +08:00
Sahdev Zala
a1ff0d5373
Merge pull request #12328 from viviyww/tests-e2e-panic-case
...
tests: fix test case panic error
2020-12-24 14:54:33 -05:00
Gyuho Lee
a88877ec7b
Merge pull request #12579 from ianwoolf/fix-clientv3-readme
...
docs: update client v3's godoc link in readme
2020-12-23 14:08:30 -08:00
Sahdev Zala
ad5b30297a
Merge pull request #12575 from nate-double-u/81-docs-toc-compilation
...
Documentation Content: TOC — Compilation PR (weights & descriptions)
2020-12-23 15:27:49 -05:00
Nate W
6c08437ec3
Adding weights and descriptions to Documentation files' frontmatter.
...
Updating for new TOC as per issue https://github.com/etcd-io/website/issues/81
Signed-off-by: Nate W <4453979+nate-double-u@users.noreply.github.com>
2020-12-23 11:13:04 -08:00
ianwoolf
fc5b5fa31e
fix godoc link in clientv3 readme
2020-12-23 10:59:13 +08:00
Sahdev Zala
4726911ea5
Merge pull request #12570 from juzhiyuan/patch-1
...
docs: update client v3's README
2020-12-21 12:03:50 -05:00
琚致远
bd97953de3
Update README.md
2020-12-21 17:40:40 +08:00
Sahdev Zala
0539bcb81f
Merge pull request #12509 from nate-double-u/81-docs-toc-sections
...
Documentation Content: TOC — Sections Order
2020-12-19 18:17:35 -05:00
琚致远
549bff5980
docs: update client v3's README
2020-12-20 00:06:10 +08:00
Sahdev Zala
a3174d0f8e
Merge pull request #12544 from sid597/learning-authDesign-link-update
...
[3.4.0] Documentation (learning-design_auth_v3) : Path to client.go updated
2020-12-13 20:12:46 -05:00
Sahdev Zala
cb6951c9f0
Merge pull request #12540 from sid597/learning-why-links-update
...
[3.4.0] Documentation (Learning-why) : Broken links updated
2020-12-12 21:49:30 -05:00
sid597
07fbd24f3d
[3.4.0] Documentation (learning-design_auth_v3) : Path to client.go
...
outdated
2020-12-11 18:11:26 +05:30
Siddharth Yadav
fe4833730d
recipes link updated
2020-12-10 23:20:14 +05:30
sid597
2e873e6a9f
Documentation (Learning-why) : Broken links updated
2020-12-10 22:42:38 +05:30
Nate W
bedad020eb
Adding weights to main section files
...
Updating for new TOC as per issue https://github.com/etcd-io/website/issues/81
Signed-off-by: Nate W <4453979+nate-double-u@users.noreply.github.com>
2020-12-08 16:22:29 -08:00
Sahdev Zala
ca866c0242
Merge pull request #12511 from randomizedcoder/failures.md
...
failures.md explicit cluster members note
2020-12-03 20:02:09 -05:00
dseddon
0c6357469d
failures.md explicit cluster members note
2020-12-03 15:47:07 -08:00
Sahdev Zala
bfc97c1123
Merge pull request #12499 from ptabor/20201127-modules-docs
...
Documentation: Developer's docs about etcd-3.5.x modules
2020-12-02 17:20:44 -05:00
Piotr Tabor
4d173231d1
Documentation: Developer's docs about etcd-3.5.x modules
2020-12-02 10:00:09 +01:00
Gyuho Lee
28d1af294e
CHANGELOG-3.4: update release dates
...
Signed-off-by: Gyuho Lee <leegyuho@amazon.com>
2020-11-25 12:21:32 -08:00
Gyuho Lee
64c409e124
Merge pull request #12491 from gyuho/better-exec
...
*: validate exec command args, remove unused "iptables" wrapper
2020-11-25 11:26:58 -08:00
Gyuho Lee
b40b46f473
CHANGELOG: updates
...
Signed-off-by: Gyuho Lee <leegyuho@amazon.com>
2020-11-25 10:40:42 -08:00
Gyuho Lee
85b61c0f4d
pkg/netutil: remove unused "iptables" wrapper
...
Signed-off-by: Gyuho Lee <leegyuho@amazon.com>
2020-11-25 10:38:42 -08:00
Gyuho Lee
3eea37cf31
tools/etcd-dump-metrics: validate exec cmd args
...
To prevent arbitrary command invocations.
Signed-off-by: Gyuho Lee <leegyuho@amazon.com>
2020-11-25 10:37:52 -08:00
Li Zhijian
fb3f91c141
test: cleanup temporary file for TestConfigFromFile
...
Signed-off-by: Li Zhijian <lizhijian@cn.fujitsu.com>
2020-11-25 17:40:43 +08:00
Li Zhijian
63c284211d
test: cleanup temporary files for TestZeroToEnd
...
Signed-off-by: Li Zhijian <lizhijian@cn.fujitsu.com>
2020-11-25 17:33:43 +08:00
Gyuho Lee
b5cefb5b3d
Merge pull request #12392 from ironcladlou/fixture-mutations
...
tests: prevent cross-test contamination via shared state
2020-11-19 10:05:42 -08:00
Jingyi Hu
c11ddc65ce
Merge pull request #12448 from agargi/introduce_config_parameter
...
server: Added config parameter experimental-apply-warning-duration
2020-11-19 02:29:08 +08:00
Ankur Gargi
c1c681adc3
server: Added config parameter experimental-warning-apply-duration
2020-11-17 17:33:19 -05:00
Sam Batschelet
06e48f0486
Merge pull request #12476 from hexfusion/mixin-typo
...
Documentation/etcd-mixin: fix typo
2020-11-15 19:19:35 -05:00
Sam Batschelet
07c15890ab
Documentation/etcd-mixin: fix typo
...
Signed-off-by: Sam Batschelet <sbatsche@redhat.com>
2020-11-15 12:26:18 -05:00
Gyuho Lee
1b8d2b1a47
Merge pull request #12452 from ptabor/20201104-release-mod-scripts
...
Release scripts for modules
2020-11-14 03:42:42 -08:00
Gyuho Lee
dc586a5ad2
Merge pull request #12459 from jingyih/proper_request_cancellation
...
server: proper cancellation for range request
2020-11-13 12:20:41 -08:00
Jingyi Hu
01844fd285
Merge pull request #12455 from mborsz/metrics
...
Add etcd_server_apply_duration_seconds
2020-11-10 00:47:11 +08:00
Jingyi Hu
718e1a7d89
Merge pull request #12451 from jingyih/update_metrics_doc
...
Documentation: add generated metrics docs
2020-11-09 23:23:23 +08:00
Maciej Borsz
0bea7df7c1
Add metric tracking apply method duration:
...
* etcd_server_apply_duration_seconds
It can be used to understand which operations are slow,
in addition to the warning log message.
2020-11-06 11:11:16 +01:00
jingyih
0558e379c3
server: proper request cancellation for range
2020-11-05 21:30:02 -08:00
Piotr Tabor
eeafcef0d2
Use "v3.5.0-pre" to reference within-etcd modules
...
instead of v3.0.0-000101010000000-00000000000,
that might be misleading as we don't develop etcd v3.0.0 any longer.
This version is a virtual version and is not supposed to be tagged
within the repository. We should tag real versions like: 3.5.0-alpha.0.
Please notice that go.etcd.io/etcd/client/v2 will be versioned as `v2.305.0-pre`.
The reason is that client v2 must have v2 version. I propose a
convention to envode the major version as 100x in minor version to make
the association to the underlying repository clear, staying within v2
version family.
The change was generated using:
```
DRY_RUN=false TARGET_VERSION="v3.5.0-pre" ./scripts/release_mod.sh update_versions
```
2020-11-04 18:28:43 +01:00
jingyih
b33c6c088e
Documentation: add metrics docs
2020-11-04 22:20:37 +08:00
Piotr Tabor
fd2f34fd13
Release: Scripts to change versions in all go.mod files and push tags upstream.
...
Examplar invocations:
Edit go.mod files such that all etcd modules are pointing on given version:
```
% DRY_RUN=false TARGET_VERSION="v3.5.13" ./scripts/release_mod.sh update_versions
```
Tag latest commit with current version number for all the modules and push upstream:
```
% DRY_RUN=true REMOTE_REPO="origin" ./scripts/release_mod.sh push_mod_tags
```
2020-11-04 15:16:36 +01:00
Piotr Tabor
6e800b9b01
20201103 no commit title check ( #12447 )
...
* Turn off checking of format of commit message.
* scripts/fix.sh: Fix fixing whitespaces in *.sh scripts
Aparently there is a difference between:
find ./ -print0 -name *.sh and
find ./ -name *.sh -print0
* etcdserver unit tests: Do not call .Fatalf(...) from not test's goroutine.
Fixes following test failures:
https://travis-ci.com/github/etcd-io/etcd/jobs/425920416
```
% (cd server && go vet ./...)
stderr: # go.etcd.io/etcd/server/v3/etcdserver
stderr: etcdserver/server_test.go:1002:4: call to (*T).Fatalf from a non-test goroutine
stderr: etcdserver/server_test.go:1166:4: call to (*T).Fatalf from a non-test goroutine
FAIL: (code:2):
% (cd server && go vet ./...)
FAIL: 'run go vet ./...' checking failed (!=0 return code)
FAIL: 'govet' failed at Tue Nov 3 04:07:47 UTC 2020
```
2020-11-03 07:59:42 -08:00
Jingyi Hu
64e048bea9
Merge pull request #12444 from kolyshkin/fix-lock
...
pkg/fileutil: fix F_OFD_ constants
2020-11-03 23:31:22 +08:00
Jingyi Hu
8c3c398676
Merge pull request #12437 from cfc4n/down_gobin_noexist
...
scripts: install github.com/myitcv/gobin while gobin doesn't exist.
2020-11-03 23:23:14 +08:00
Jingyi Hu
cd09726ae0
Merge pull request #12430 from meadlai/master
...
Fix go get cmd
2020-11-03 22:52:24 +08:00