Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

server: update OpenTelemetry to 1.0.1 #13361

Merged
merged 2 commits into from Oct 20, 2021
Merged

server: update OpenTelemetry to 1.0.1 #13361

merged 2 commits into from Oct 20, 2021

Conversation

vooon
Copy link
Contributor

@vooon vooon commented Sep 21, 2021

Update API of the OpenTelemetry library and updates gRPC to 1.40.0.

Fixes #13141

server/go.mod Outdated Show resolved Hide resolved
@hexfusion
Copy link
Contributor

cc @lilic

Copy link
Contributor

@lilic lilic left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thank you! lgtm

@lilic
Copy link
Contributor

lilic commented Sep 27, 2021

cc @dashpole kube should probably bump as well, if you haven't already.

@ptabor
Copy link
Contributor

ptabor commented Oct 1, 2021

FAIL: inconsistent versions for depencency: github.com/spf13/cobra
  - github.com/spf13/cobra@v1.1.3 from: go.etcd.io/etcd/pkg/v3
  - github.com/spf13/cobra@v1.2.1 from: go.etcd.io/etcd/etcdctl/v3
  - github.com/spf13/cobra@v1.2.1 from: go.etcd.io/etcd/etcdutl/v3
  - github.com/spf13/cobra@v1.2.1 from: go.etcd.io/etcd/server/v3
  - github.com/spf13/cobra@v1.2.1 from: go.etcd.io/etcd/tests/v3
FAIL: inconsistent versions for depencency: go.uber.org/zap
  - github.com/spf13/cobra@v1.2.1 from: go.etcd.io/etcd/v3
  - go.uber.org/zap@v1.17.0 from: go.etcd.io/etcd/client/pkg/v3
FAIL: inconsistent versions for depencency: google.golang.org/genproto
  - go.uber.org/zap@v1.17.0 from: go.etcd.io/etcd/client/v3
  - go.uber.org/zap@v1.17.0 from: go.etcd.io/etcd/pkg/v3
  - go.uber.org/zap@v1.19.1 from: go.etcd.io/etcd/etcdctl/v3
  - go.uber.org/zap@v1.19.1 from: go.etcd.io/etcd/etcdutl/v3
  - go.uber.org/zap@v1.19.1 from: go.etcd.io/etcd/server/v3
  - go.uber.org/zap@v1.19.1 from: go.etcd.io/etcd/tests/v3
  - go.uber.org/zap@v1.19.1 from: go.etcd.io/etcd/v3
  - google.golang.org/genproto@v0.0.0-20210602131652-f16073e35f0c from: go.etcd.io/etcd/api/v3
  - google.golang.org/genproto@v0.0.0-20210920155426-26f343e4c215 from: go.etcd.io/etcd/server/v3
FAIL: inconsistent versions for depencency: google.golang.org/grpc
  - go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc@v0.23.0 from: go.etcd.io/etcd/server/v3
FAIL: inconsistent dependencies
  - google.golang.org/grpc@v1.38.0 from: go.etcd.io/etcd/api/v3
  - google.golang.org/grpc@v1.38.0 from: go.etcd.io/etcd/client/v3
  - google.golang.org/grpc@v1.38.0 from: go.etcd.io/etcd/pkg/v3
  - google.golang.org/grpc@v1.40.0 from: go.etcd.io/etcd/etcdctl/v3
  - google.golang.org/grpc@v1.40.0 from: go.etcd.io/etcd/server/v3
  - google.golang.org/grpc@v1.40.0 from: go.etcd.io/etcd/tests/v3
  - google.golang.org/grpc@v1.40.0 from: go.etcd.io/etcd/v3
FAIL: 'dep' failed at Fri Oct  1 16:44:34 UTC 2021

@vooon
Copy link
Contributor Author

vooon commented Oct 2, 2021

@ptabor could you please tell me how to fix that?

@ptabor
Copy link
Contributor

ptabor commented Oct 2, 2021

Please call:

  ./scripts/update_dep.sh github.com/spf13/cobra v1.2.1
  ...
   ./scripts/update_dep.sh google.golang.org/grpc v1.40.0

to make sure all etcd modules point on the same version of a dependency.

@vooon
Copy link
Contributor Author

vooon commented Oct 3, 2021

@ptabor done. But probably we could update to OTEL 1.0.1 and gRPC 1.41.0 already.

@ptabor ptabor changed the title server: update OpenTelemetry to 1.0.0 server: update OpenTelemetry to 1.0.1 Oct 4, 2021
@ptabor
Copy link
Contributor

ptabor commented Oct 5, 2021

I think that something zap? grpc? is introducing a cyclic dependency on etcd,
that causes the tests to fail:

% (cd pkg && 'go' 'build' './...')
stderr: go: github.com/spf13/cobra@v1.2.1 requires
stderr: github.com/spf13/viper@v1.8.1 requires
stderr: github.com/bketelsen/crypt@v0.0.4 requires
stderr: go.etcd.io/etcd/client/v2@v2.305.0 requires
stderr: go.etcd.io/etcd/api/v3@v3.5.0 (replaced by ./FORBIDDEN_DEPENDENCY): reading FORBIDDEN_DEPENDENCY/go.mod: open /home/runner/work/etcd/etcd/pkg/FORBIDDEN_DEPENDENCY/go.mod: no such file or directory
FAIL: (code:1):

Update API of the OpenTelemetry library and updates gRPC to 1.41.0.

Fixes etcd-io#13141

Signed-off-by: Vladimir Ermakov <vooon341@gmail.com>
@vooon
Copy link
Contributor Author

vooon commented Oct 13, 2021

@ptabor done several rebases to reduce deps changes. I hope this time it'll work.

To fix dependencies.

Signed-off-by: Vladimir Ermakov <vooon341@gmail.com>
@vooon
Copy link
Contributor Author

vooon commented Oct 13, 2021

@ptabor forgot to add update_dep for grpc, fixed.

@vooon
Copy link
Contributor Author

vooon commented Oct 13, 2021

@ptabor i do not know why grpcproxy failed. Maybe it needs some changes for gRPC 1.41.0?

@vooon
Copy link
Contributor Author

vooon commented Oct 20, 2021

Hmm, i can't reproduce that problem.

etcd$ PASSES=grpcproxy ./test.sh
Running with --race
Starting at: Ср 20 окт 2021 12:45:22 MSK

'grpcproxy' started at Ср 20 окт 2021 12:45:22 MSK
% (cd tests && 'env' 'go' 'test' '-timeout=30m' '-tags' 'cluster_proxy' '--race' 'go.etcd.io/etcd/tests/v3/integration')
ok  	go.etcd.io/etcd/tests/v3/integration	222.059s
% (cd tests && 'env' 'go' 'test' '-timeout=30m' '-tags' 'cluster_proxy' '--race' 'go.etcd.io/etcd/tests/v3/integration/client')
ok  	go.etcd.io/etcd/tests/v3/integration/client	0.200s
% (cd tests && 'env' 'go' 'test' '-timeout=30m' '-tags' 'cluster_proxy' '--race' 'go.etcd.io/etcd/tests/v3/integration/client/examples')
ok  	go.etcd.io/etcd/tests/v3/integration/client/examples	0.176s
% (cd tests && 'env' 'go' 'test' '-timeout=30m' '-tags' 'cluster_proxy' '--race' 'go.etcd.io/etcd/tests/v3/integration/clientv3')
ok  	go.etcd.io/etcd/tests/v3/integration/clientv3	108.630s
% (cd tests && 'env' 'go' 'test' '-timeout=30m' '-tags' 'cluster_proxy' '--race' 'go.etcd.io/etcd/tests/v3/integration/clientv3/concurrency')
ok  	go.etcd.io/etcd/tests/v3/integration/clientv3/concurrency	3.276s
% (cd tests && 'env' 'go' 'test' '-timeout=30m' '-tags' 'cluster_proxy' '--race' 'go.etcd.io/etcd/tests/v3/integration/clientv3/connectivity')
ok  	go.etcd.io/etcd/tests/v3/integration/clientv3/connectivity	33.161s
% (cd tests && 'env' 'go' 'test' '-timeout=30m' '-tags' 'cluster_proxy' '--race' 'go.etcd.io/etcd/tests/v3/integration/clientv3/examples')
ok  	go.etcd.io/etcd/tests/v3/integration/clientv3/examples	1.699s
% (cd tests && 'env' 'go' 'test' '-timeout=30m' '-tags' 'cluster_proxy' '--race' 'go.etcd.io/etcd/tests/v3/integration/clientv3/experimental/recipes')
ok  	go.etcd.io/etcd/tests/v3/integration/clientv3/experimental/recipes	4.519s
% (cd tests && 'env' 'go' 'test' '-timeout=30m' '-tags' 'cluster_proxy' '--race' 'go.etcd.io/etcd/tests/v3/integration/clientv3/lease')
ok  	go.etcd.io/etcd/tests/v3/integration/clientv3/lease	120.534s
% (cd tests && 'env' 'go' 'test' '-timeout=30m' '-tags' 'cluster_proxy' '--race' 'go.etcd.io/etcd/tests/v3/integration/clientv3/naming')
ok  	go.etcd.io/etcd/tests/v3/integration/clientv3/naming	0.781s
% (cd tests && 'env' 'go' 'test' '-timeout=30m' '-tags' 'cluster_proxy' '--race' 'go.etcd.io/etcd/tests/v3/integration/clientv3/snapshot')
ok  	go.etcd.io/etcd/tests/v3/integration/clientv3/snapshot	1.492s
% (cd tests && 'env' 'go' 'test' '-timeout=30m' '-tags' 'cluster_proxy' '--race' 'go.etcd.io/etcd/tests/v3/integration/embed')
ok  	go.etcd.io/etcd/tests/v3/integration/embed	0.018s [no tests to run]
% (cd tests && 'env' 'go' 'test' '-timeout=30m' '-tags' 'cluster_proxy' '--race' 'go.etcd.io/etcd/tests/v3/integration/proxy/grpcproxy')
ok  	go.etcd.io/etcd/tests/v3/integration/proxy/grpcproxy	1.998s
% (cd tests && 'env' 'go' 'test' '-timeout=30m' '-tags' 'cluster_proxy' '--race' 'go.etcd.io/etcd/tests/v3/integration/snapshot')
ok  	go.etcd.io/etcd/tests/v3/integration/snapshot	13.242s
% (cd tests && 'env' 'go' 'test' '-timeout=30m' '-tags' 'cluster_proxy' '--race' 'go.etcd.io/etcd/tests/v3/integration/v2store')
ok  	go.etcd.io/etcd/tests/v3/integration/v2store	1.087s
% (cd tests && 'env' 'go' 'test' '-timeout=30m' '-tags' 'cluster_proxy' '--race' 'go.etcd.io/etcd/tests/v3/e2e')
ok  	go.etcd.io/etcd/tests/v3/e2e	342.574s
'grpcproxy' completed at Ср 20 окт 2021 12:59:53 MSK
SUCCESS

@ptabor ptabor merged commit 8aa6ae9 into etcd-io:main Oct 20, 2021
@vooon vooon deleted the otel-1.0.0 branch October 20, 2021 14:42
@albertvaka
Copy link

Are there any plans for a new release that includes this change? @ptabor
Context: We need this change so OpenTelemetry can be updated on Kubernetes as well.

@serathius serathius added this to the etcd-v3.6 milestone Nov 24, 2021
@serathius
Copy link
Member

This should be included in v3.6 which is planned for Dec 15, however with current progress on tasks in milestone I expect that we will slip.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Development

Successfully merging this pull request may close these issues.

Update OpenTelemetry to 1.0.0
6 participants