Skip to content

Conversation

@thaJeztah
Copy link
Member

@thaJeztah thaJeztah commented Feb 22, 2020

opening as draft, to see if there are regressions/failures

temporarily rebased on #4072

@theopenlab-ci
Copy link

theopenlab-ci bot commented Feb 22, 2020

Build succeeded.

@thaJeztah
Copy link
Member Author

Seeing some failures;

?   	github.com/containerd/containerd/log/logtest	[no test files]
fatal error: checkptr: unsafe pointer conversion

ok  	github.com/containerd/containerd/archive	0.896s	coverage: 67.3% of statements
fatal error: checkptr: unsafe pointer conversion

@thaJeztah thaJeztah changed the title [do not merge] update to golang 1.14rc1 [do not merge] update to golang 1.14.0 Feb 28, 2020
@theopenlab-ci
Copy link

theopenlab-ci bot commented Feb 28, 2020

Build succeeded.

@theopenlab-ci
Copy link

theopenlab-ci bot commented Feb 28, 2020

Build succeeded.

@theopenlab-ci
Copy link

theopenlab-ci bot commented Feb 28, 2020

Build succeeded.

@theopenlab-ci
Copy link

theopenlab-ci bot commented Feb 28, 2020

Build succeeded.

@Foxboron
Copy link

Foxboron commented Mar 7, 2020

As a headsup, the etcd/bbolt library is having a checkptr failure which is currently being hit in the current containerd test suite with go 1.14.

etcd-io/bbolt#201

@Foxboron
Copy link

I have built containerd with bbolt 1.3.4 which addressed the go 1.14 incompatibilities and the test suite passes. However it's backported to containerd 1.3.3 and I didn't manage to apply it on top of master without a failing testsuite.

Foxboron@d254d74

@dims
Copy link
Member

dims commented Mar 22, 2020

@Foxboron what was the test failure?

@Foxboron
Copy link

Note I have removed the non-failing tests from the output to shorten it a bit.

λ containerd master» git diff vendor.conf
diff --git a/vendor.conf b/vendor.conf
index 72e36613..dc779e11 100644
--- a/vendor.conf
+++ b/vendor.conf
@@ -42,7 +42,7 @@ github.com/russross/blackfriday                     05f3235734ad95d0016f6a23902f
 github.com/sirupsen/logrus                          8bdbc7bcc01dcbb8ec23dc8a28e332258d25251f # v1.4.1
 github.com/syndtr/gocapability                      d98352740cb2c55f81556b63d4a1ec64c5a319c2
 github.com/urfave/cli                               bfe2e925cfb6d44b40ad3a779165ea7e8aff9212 # v1.22.0
-go.etcd.io/bbolt                                    a0458a2b35708eef59eb5f620ceb3cd1c01a824d # v1.3.3
+go.etcd.io/bbolt                                    68cc10a767ea1c6b9e8dcb9847317ff192d6d974 # v1.3.4
 go.opencensus.io                                    9c377598961b706d1542bd2d84d538b5094d596e # v0.22.0
 golang.org/x/net                                    f3200d17e092c607f615320ecaad13d87ad9a2b3
 golang.org/x/sync                                   42b317875d0fa942474b76e1b46a6060d720ae6e
λ containerd master» make test           
+ test
[...]
==184931==ERROR: ThreadSanitizer failed to allocate 0x2849000 (42242048) bytes at address 1774d7fcd0000 (errno: 12)
FAIL	github.com/containerd/containerd/archive	0.007s
==184367==ERROR: ThreadSanitizer failed to allocate 0x2751000 (41226240) bytes at address 176870d4ac000 (errno: 12)
FAIL	github.com/containerd/containerd/archive/compression	0.012s
==184444==ERROR: ThreadSanitizer failed to allocate 0x2751000 (41226240) bytes at address 17823cdb8c000 (errno: 12)
FAIL	github.com/containerd/containerd/cio	0.006s
[...]
==184903==ERROR: ThreadSanitizer failed to allocate 0x2759000 (41259008) bytes at address 17856a6280000 (errno: 12)
FAIL	github.com/containerd/containerd/content	0.006s
==185061==ERROR: ThreadSanitizer failed to allocate 0x2761000 (41291776) bytes at address 177dafc900000 (errno: 12)
FAIL	github.com/containerd/containerd/content/local	0.007s
[...]
==185050==ERROR: ThreadSanitizer failed to allocate 0x2761000 (41291776) bytes at address 175cb986d4000 (errno: 12)
FAIL	github.com/containerd/containerd/diff/apply	0.026s
==185005==ERROR: ThreadSanitizer failed to allocate 0x2749000 (41193472) bytes at address 175b7d5b34000 (errno: 12)
FAIL	github.com/containerd/containerd/errdefs	0.005s
==185090==ERROR: ThreadSanitizer failed to allocate 0x2769000 (41324544) bytes at address 17686c2414000 (errno: 12)
FAIL	github.com/containerd/containerd/events/exchange	0.032s
==185076==ERROR: ThreadSanitizer failed to allocate 0x2749000 (41193472) bytes at address 17785f0830000 (errno: 12)
FAIL	github.com/containerd/containerd/filters	0.008s
==185032==ERROR: ThreadSanitizer failed to allocate 0x2749000 (41193472) bytes at address 17756dfdf8000 (errno: 12)
FAIL	github.com/containerd/containerd/gc	0.018s
==185353==ERROR: ThreadSanitizer failed to allocate 0x2841000 (42209280) bytes at address 177580f9f0000 (errno: 12)
FAIL	github.com/containerd/containerd/gc/scheduler	0.007s
==185135==ERROR: ThreadSanitizer failed to allocate 0x2749000 (41193472) bytes at address 17904439dc000 (errno: 12)
FAIL	github.com/containerd/containerd/identifiers	0.015s
==185159==ERROR: ThreadSanitizer failed to allocate 0x2749000 (41193472) bytes at address 175c40521c000 (errno: 12)
FAIL	github.com/containerd/containerd/labels	0.021s
==185190==ERROR: ThreadSanitizer failed to allocate 0x2751000 (41226240) bytes at address 176b06e0dc000 (errno: 12)
FAIL	github.com/containerd/containerd/log	0.005s
==185446==ERROR: ThreadSanitizer failed to allocate 0x2851000 (42274816) bytes at address 177e224fe8000 (errno: 12)
FAIL	github.com/containerd/containerd/metadata	0.021s
==185247==ERROR: ThreadSanitizer failed to allocate 0x2759000 (41259008) bytes at address 17641cb7e4000 (errno: 12)
FAIL	github.com/containerd/containerd/mount	0.005s
==185292==ERROR: ThreadSanitizer failed to allocate 0x2759000 (41259008) bytes at address 175960e3d0000 (errno: 12)
FAIL	github.com/containerd/containerd/namespaces	0.007s
==185331==ERROR: ThreadSanitizer failed to allocate 0x2761000 (41291776) bytes at address 177f0b38d0000 (errno: 12)
FAIL	github.com/containerd/containerd/oci	0.005s
==185315==ERROR: ThreadSanitizer failed to allocate 0x2751000 (41226240) bytes at address 176cba16b8000 (errno: 12)
FAIL	github.com/containerd/containerd/platforms	0.027s
==185293==ERROR: ThreadSanitizer failed to allocate 0x2749000 (41193472) bytes at address 175681a588000 (errno: 12)
FAIL	github.com/containerd/containerd/reference	0.004s
==185324==ERROR: ThreadSanitizer failed to allocate 0x2759000 (41259008) bytes at address 17893b952c000 (errno: 12)
FAIL	github.com/containerd/containerd/remotes	0.018s
==185456==ERROR: ThreadSanitizer failed to allocate 0x2811000 (42012672) bytes at address 176d5fdb78000 (errno: 12)
FAIL	github.com/containerd/containerd/remotes/docker	0.017s
==185553==ERROR: ThreadSanitizer failed to allocate 0x2851000 (42274816) bytes at address 1756bdff0c000 (errno: 12)
FAIL	github.com/containerd/containerd/runtime/v2	0.027s
==185478==ERROR: ThreadSanitizer failed to allocate 0x2769000 (41324544) bytes at address 178e076f84000 (errno: 12)
FAIL	github.com/containerd/containerd/runtime/v2/shim	0.020s
==185650==ERROR: ThreadSanitizer failed to allocate 0x2871000 (42405888) bytes at address 175843e400000 (errno: 12)
FAIL	github.com/containerd/containerd/services/server	0.008s
==185601==ERROR: ThreadSanitizer failed to allocate 0x2841000 (42209280) bytes at address 178206a60c000 (errno: 12)
FAIL	github.com/containerd/containerd/services/server/config	0.019s
==185642==ERROR: ThreadSanitizer failed to allocate 0x2849000 (42242048) bytes at address 1788480ba4000 (errno: 12)
FAIL	github.com/containerd/containerd/snapshots/benchsuite	0.012s
==185630==ERROR: ThreadSanitizer failed to allocate 0x2849000 (42242048) bytes at address 177a6241a0000 (errno: 12)
FAIL	github.com/containerd/containerd/snapshots/btrfs	0.019s
==185668==ERROR: ThreadSanitizer failed to allocate 0x2849000 (42242048) bytes at address 1777b051c4000 (errno: 12)
FAIL	github.com/containerd/containerd/snapshots/devmapper	0.008s
==185557==ERROR: ThreadSanitizer failed to allocate 0x2759000 (41259008) bytes at address 176cea0a5c000 (errno: 12)
FAIL	github.com/containerd/containerd/snapshots/devmapper/dmsetup	0.005s
==185593==ERROR: ThreadSanitizer failed to allocate 0x2759000 (41259008) bytes at address 178602fc50000 (errno: 12)
FAIL	github.com/containerd/containerd/snapshots/devmapper/losetup	0.027s
==185719==ERROR: ThreadSanitizer failed to allocate 0x2849000 (42242048) bytes at address 1785b195ec000 (errno: 12)
FAIL	github.com/containerd/containerd/snapshots/native	0.009s
==185748==ERROR: ThreadSanitizer failed to allocate 0x2849000 (42242048) bytes at address 178faefd90000 (errno: 12)
FAIL	github.com/containerd/containerd/snapshots/overlay	0.005s
==185669==ERROR: ThreadSanitizer failed to allocate 0x2761000 (41291776) bytes at address 1786047df0000 (errno: 12)
FAIL	github.com/containerd/containerd/snapshots/storage	0.004s
==185670==ERROR: ThreadSanitizer failed to allocate 0x2759000 (41259008) bytes at address 1756ac3fa4000 (errno: 12)
FAIL	github.com/containerd/containerd/sys	0.004s
FAIL
make: *** [Makefile:170: test] Error 1

@kzys
Copy link
Member

kzys commented Mar 25, 2020

@Foxboron I cannot reproduce the issue on my environment (Go 1.14 + Debian 10 + EC2 m5d.metal). There was a similar report on golang-nuts but the cause of the issue was the machine didn't have enough memory to run tests with ThreadSanitizer.

@Foxboron
Copy link

@kzys Can you triple check that the tests are run with -race? There should be more than enough memory for this so I'm confused.

@kzys
Copy link
Member

kzys commented Mar 25, 2020

@Foxboron Thanks. I thought it was default. But make test TESTFLAGS='-race -count=1' worked for me as well.

@theopenlab-ci
Copy link

theopenlab-ci bot commented Mar 30, 2020

Build succeeded.

@thaJeztah thaJeztah changed the title [do not merge] update to golang 1.14.0 [do not merge] update to golang 1.14.2 Apr 29, 2020
@theopenlab-ci
Copy link

theopenlab-ci bot commented Apr 29, 2020

Build succeeded.

@theopenlab-ci
Copy link

theopenlab-ci bot commented Apr 30, 2020

Build succeeded.

@codecov-io
Copy link

Codecov Report

Merging #4050 into master will not change coverage.
The diff coverage is n/a.

Impacted file tree graph

@@           Coverage Diff           @@
##           master    #4050   +/-   ##
=======================================
  Coverage   38.34%   38.34%           
=======================================
  Files          90       90           
  Lines       12728    12728           
=======================================
  Hits         4881     4881           
  Misses       7181     7181           
  Partials      666      666           
Flag Coverage Δ
#windows 38.34% <ø> (ø)

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 4be98fa...ea0b79c. Read the comment docs.

@thaJeztah thaJeztah force-pushed the bump_golang_1.14 branch from ea0b79c to 3789c4d Compare May 2, 2020 10:29
@dims
Copy link
Member

dims commented Sep 8, 2020

LGTM 👍

@thaJeztah
Copy link
Member Author

We need to make sure that this doesn't cause the problem described in #4509

@cpuguy83
Copy link
Member

cpuguy83 commented Sep 8, 2020

I could not reproduce the issues unless I built the shim with --buildmode=pie and CGO_ENABLED=1.

@Foxboron
Copy link

Foxboron commented Sep 8, 2020

@cpuguy83 Just checking, but are you running from HEAD? I can't reproduce this from master, so I think it's been fixed after the 1.4.0 release.

@cpuguy83
Copy link
Member

cpuguy83 commented Sep 8, 2020

@Foxboron The issue is specifically with how you build it. I built from HEAD, but adding --buildmode=pie and CGO_ENABLED=1. This caused the the shim to deadlock.

@thaJeztah
Copy link
Member Author

The Makefile should build without that, correct?

bin/containerd-shim: cmd/containerd-shim FORCE # set !cgo and omit pie for a static shim build: https://github.com/golang/go/issues/17789#issuecomment-258542220
(434f0e6 / golang/go#17789 (comment))

@cpuguy83
Copy link
Member

cpuguy83 commented Sep 8, 2020

Yes, the makefile builds correctly.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
@thaJeztah thaJeztah changed the title Update to golang 1.15.1 Update to golang 1.15.2 Sep 11, 2020
@thaJeztah
Copy link
Member Author

Updated to Go 1.15.2

@theopenlab-ci
Copy link

theopenlab-ci bot commented Sep 11, 2020

Build succeeded.

Copy link
Member

@cpuguy83 cpuguy83 left a comment

Choose a reason for hiding this comment

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

LGTM

One thing to note... and I'm not sure if there is somewhere to put this... but clients doing signal forwarding will see a lot of SIGURG as noted in #4532 which ignores SIGURG for ctr

@mxpv mxpv merged commit 5b3ac0c into containerd:master Sep 14, 2020
@thaJeztah thaJeztah deleted the bump_golang_1.14 branch September 14, 2020 17:50
@AkihiroSuda AkihiroSuda modified the milestones: 1.4.1, 1.4.2 Sep 15, 2020
@AkihiroSuda AkihiroSuda added cherry-picked/1.4.x PR commits are cherry picked into the release/1.4 branch and removed cherry-pick/1.4.x labels Nov 10, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

cherry-picked/1.4.x PR commits are cherry picked into the release/1.4 branch

Projects

None yet

Development

Successfully merging this pull request may close these issues.

8 participants