Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Conversation

@fidencio
Copy link
Contributor

@fidencio fidencio commented Sep 5, 2020

What type of PR is this?

/kind bug

What this PR does / why we need it:

The continerd/ttrpc package, used to support the runtimes of type "vm",
relies on the gogo/protobuf protocol buffer implementation.
Recently, google updated the golang protocol buffer implementation with
a newer and backward incompatible API:
https://blog.golang.org/protobuf-apiv2

The gogo/protobuf protocol has not been updated and is now incompatible
with the newer golang protocol buffer implementation.
Unfortunately, the containerd/ttrpc package imports also the package:
google.golang.org/genproto/googleapis/rpc/status
which is generated by means of the golang protocol buffer. With the
newer version, the generated code is no more compatible with
gogo/protobuf, leading to panic during execution of the ttrpc code.

While the ttrpc package needs a proper fix, this patch downgrades the
version of the golang/protobuf, genproto, and grpc.

This PR is a backport of:
6bda9b5

Which issue(s) this PR fixes:

Fixes #3991

Special notes for your reviewer:

@fgiudici, @mrunalp, @haircommander,

Backport of #4164

Does this PR introduce a user-facing change?

None

The continerd/ttrpc package, used to support the runtimes of type "vm",
relies on the gogo/protobuf protocol buffer implementation.
Recently, google updated the golang protocol buffer implementation with
a newer and backward incompatible API:
https://blog.golang.org/protobuf-apiv2

The gogo/protobuf protocol has not been updated and is now incompatible
with the newer golang protocol buffer implementation.
Unfortunately, the containerd/ttrpc package imports also the package:
google.golang.org/genproto/googleapis/rpc/status
which is generated by means of the golang protocol buffer. With the
newer version, the generated code is no more compatible with
gogo/protobuf, leading to panic during execution of the ttrpc code.

While the ttrpc package needs a proper fix, this patch downgrades the
version of the golang/protobuf, genproto, and grpc.

This PR is a "backport" of:
cri-o@6bda9b5

Signed-off-by: Fabiano Fidêncio <[email protected]>
Signed-off-by: Francesco Giudici <[email protected]>
Signed-off-by: Mrunal Patel <[email protected]>
@openshift-ci-robot openshift-ci-robot added release-note-none Denotes a PR that doesn't merit a release note. dco-signoff: yes Indicates the PR's author has DCO signed all their commits. kind/bug Categorizes issue or PR as related to a bug. labels Sep 5, 2020
@openshift-ci-robot openshift-ci-robot added the approved Indicates a PR has been approved by an approver from all required OWNERS files. label Sep 5, 2020
@fidencio
Copy link
Contributor Author

fidencio commented Sep 5, 2020

/cc @fgiudici, please, if you can also check this one ... :-)

@codecov
Copy link

codecov bot commented Sep 5, 2020

Codecov Report

Merging #4167 into release-1.19 will not change coverage.
The diff coverage is n/a.

@@              Coverage Diff              @@
##           release-1.19    #4167   +/-   ##
=============================================
  Coverage         41.68%   41.68%           
=============================================
  Files               110      110           
  Lines              9053     9053           
=============================================
  Hits               3774     3774           
  Misses             4938     4938           
  Partials            341      341           

@fidencio
Copy link
Contributor Author

fidencio commented Sep 5, 2020

/retest

@fidencio
Copy link
Contributor Author

fidencio commented Sep 5, 2020

Interesting, git-validation is failing for something that doesn't look related to this PR:

 * 85915147a "Merge remote-tracking branch 'origin/master' into release-1.19" ... FAIL
  - FAIL - has whitespace errors. See `git show --check 85915147a419c1880e7ff22630bf87d40766c27c`.

@haircommander, @saschagrunert, is this a known issue?

@fidencio
Copy link
Contributor Author

fidencio commented Sep 5, 2020

/test e2e_cgroupv2

1 similar comment
@fidencio
Copy link
Contributor Author

fidencio commented Sep 6, 2020

/test e2e_cgroupv2

@fgiudici
Copy link
Contributor

fgiudici commented Sep 7, 2020

/cc @fgiudici, please, if you can also check this one ... :-)

Checked in my env, it solves issue #3991: able to start the sandbox properly!

@fidencio
Copy link
Contributor Author

fidencio commented Sep 7, 2020

/test e2e_cgroupv2

@mrunalp
Copy link
Member

mrunalp commented Sep 8, 2020

/lgtm

@openshift-ci-robot
Copy link

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: fidencio, mrunalp

The full list of commands accepted by this bot can be found here.

The pull request process is described here

Details Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@openshift-ci-robot openshift-ci-robot added the lgtm Indicates that a PR is ready to be merged. label Sep 8, 2020
@openshift-ci-robot
Copy link

openshift-ci-robot commented Sep 8, 2020

@fidencio: The following test failed, say /retest to rerun all failed tests:

Test name Commit Details Rerun command
ci/openshift-jenkins/e2e_crun_cgroupv2 15aa81b link /test e2e_cgroupv2

Full PR test history. Your PR dashboard.

Details

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@fidencio
Copy link
Contributor Author

fidencio commented Sep 8, 2020

/retest

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

Labels

approved Indicates a PR has been approved by an approver from all required OWNERS files. dco-signoff: yes Indicates the PR's author has DCO signed all their commits. kind/bug Categorizes issue or PR as related to a bug. lgtm Indicates that a PR is ready to be merged. release-note-none Denotes a PR that doesn't merit a release note.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants