Revendor Microsoft/go-winio for 8gB file fix when importing or committing image layers#41430
Conversation
55e5d75 to
29a5e80
Compare
|
It should be right to go now, but the win-RS5 CI build has failed at the checkout stage, and I'm not seeing a way to reattempt it. |
cpuguy83
left a comment
There was a problem hiding this comment.
Full diff microsoft/go-winio@6c72808...5b44b70
|
I'm not clear how backporting candidacy is handled (I don't see a priority on #40444), but I think this could be a candidate for a 19.03 patch release, so we can resolve adamrehn/ue4-docker#44 sooner. |
|
Hmm. Test failed on Win-RS5. Might need to increase the timeout, even a previous successful run took over 9 minutes for this test, since it's writing out an 8gB file inside the container. It's possible this could be made faster somehow, but I never worked out how during my repro efforts earlier this year. |
d6c3997 to
fd50269
Compare
|
Okay, this is ready to go, again. ^_^ For some reason two of the integration-cli testsuites failed. They haven't failed before with these changes, and I noticed that they also seem a bit flaky on the master builds on other platforms, so I'm not sure if I can do anything about that. Also, the CI pipeline appears to be stuck. One step has been stuck for almost two hours, despite hitting |
|
@TBBle Windows CI have been on very bad shape on very long time here and I starting to be bit skeptic with these so now when #40599 is merged can I ask you to:
|
This reproduces moby#40444, based on a suggestion from GitHub user @marosset Signed-off-by: Paul "TBBle" Hampson <[email protected]>
This pulls in the migration of go-winio/backuptar from the bundled fork of archive/tar from Go 1.6 to using Go's current archive/tar unmodified. This fixes the failure to import an OCI layer (tar stream) containing a file larger than 8gB. Fixes: moby#40444 Signed-off-by: Paul "TBBle" Hampson <[email protected]>
395d687 to
ab8518e
Compare
|
A revert of the revendoring (ab8518ef4ba127a0344aeee3b792128b4bf79f3a), i.e. just the Windows enablement of |
ab8518e to
35c531d
Compare
|
If But as far as I know, this testing framework supports no such marker. |
Yes I see that it failed as expected and it happened already on 22 minutes when full CI takes ~60 minutes. Thanks. To be honest, I'm not familiar with 'expected to fail' marker or frameworks which support it. However I didn't expect that you would update PR already today so maybe it is not needed to wait #38469 So LGTM (not maintainer). @thaJeztah PTAL |
|
CI run failed in building e2e test image, I can't see how that'd be related to my changes... |
|
@TBBle yep. Not related to this one , can be ignored. |
| github.com/Azure/go-ansiterm d6e3b3328b783f23731bc4d058875b0371ff8109 | ||
| github.com/Microsoft/hcsshim 9dcb42f100215f8d375b4a9265e5bba009217a85 # moby branch | ||
| github.com/Microsoft/go-winio 6c72808b55902eae4c5943626030429ff20f3b63 # v0.4.14 | ||
| github.com/Microsoft/go-winio 5b44b70ab3ab4d291a7c1d28afe7b4afeced0ed4 # v0.4.15-0.20200908182639-5b44b70ab3ab |
|
Thanks! |
- What I did
Revendored https://github.com/microsoft/go-winio to pull microsoft/go-winio#175, which replaces a bundled fork of archive/tar for Go 1.6 with use of vanilla archive/tar.
There's more context on this issue on microsoft/Windows-Containers#43.
Fixes: #40444
- How I did it
github.com/docker/docker/integration/build TestBuildWithHugeFilefor Windows, to reproduce the issue.vndr -whitelist=^archive/tar github.com/Microsoft/go-winio(per the note at the end of vendor.conf)git checkout vendor/archive/tarto revert vndr's deletion of vendor/archive/tar.github.com/Microsoft/go-winio/archive/tarto usearchive/tarinstead.- How to verify it
The existing unit test
github.com/docker/docker/integration/build TestBuildWithHugeFilehas been implemented for Windows Containers, and reproduces the issue.For manual reproduction, see #40444 or the below procedure.
docker build .- Description for the changelog
- A picture of a cute animal (not mandatory but encouraged)