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

macOS: task input files sporadically fail to mount (zero length) #461

Open
jdidion opened this issue Dec 23, 2020 · 8 comments
Open

macOS: task input files sporadically fail to mount (zero length) #461

jdidion opened this issue Dec 23, 2020 · 8 comments
Labels
bug Something isn't working

Comments

@jdidion
Copy link

jdidion commented Dec 23, 2020

The attached workflow returns the correct output sometimes and other times does not. In the failure case it is because the input file is not correctly staged in the task's work/ directory - the staged file is empty rather than containing the correct content. When I set --copy-input-files it always works correctly.

The exact command line I use is:

miniwdl run --error-json --copy-input-files -i input.json -p submodule test.wdl

and input.json is:

{"cat_file.in_txt": "data/in.txt", "cat_file.in_int": 1}

failing_test.zip

@mlin
Copy link
Collaborator

mlin commented Dec 30, 2020

@jdidion is this on macOS? Adjusting this setting may help if so #145 (comment) -- I am still looking into it

@mlin mlin added bug Something isn't working question Further information is requested labels Dec 30, 2020
@jdidion
Copy link
Author

jdidion commented Dec 30, 2020

Yes it is macOS. Which setting exactly? TMPDIR?

@mlin
Copy link
Collaborator

mlin commented Dec 30, 2020

@jdidion In this direct comment link #145 (comment) @tomkinsc reported that disabling this obscure Docker for Mac setting "Use gRPC FUSE for file sharing" improved things for him (though it may not have been exactly the same problem).

The miniwdl unit test suite (which starts up hundreds of containers over various cases) reliably fails on my MacBook due to this problem, even though it's intermittent for any one. I have been meaning to fiddle with that gRPC setting to see if it helps, but haven't gotten to it yet.

@mlin mlin removed the question Further information is requested label Dec 30, 2020
@mlin mlin changed the title Intermittent failure when not using --copy-input-files macOS: task input files sporadically fail to mount (zero length) Dec 30, 2020
@jdidion
Copy link
Author

jdidion commented Dec 30, 2020

Got it - I'll try this out when I'm back to work next week.

@mlin
Copy link
Collaborator

mlin commented Jan 6, 2021

I can confirm that disabling this setting, Docker for Mac > Preferences > Experimental Features > Use gRPC for file sharing makes the miniwdl unit test suite work well on my MacBook, while it's busted with that setting on as default.

image
(image credit @tomkinsc; cc @lynnlangit)

One can google a variety of issues people have opened with either alternative of that setting, so I suppose we just have to make do with this pitfall for the time being =/

@mlin mlin mentioned this issue Jan 7, 2021
7 tasks
@nh13
Copy link
Contributor

nh13 commented May 31, 2022

Chiming in that I hit this too, and using the "legacy osxfs files sharing" fixed it for me too.

@adamnovak
Copy link
Contributor

I ran into this issue using Toil with MiniWDL's Docker task runner. Changing the Docker Desktop file sharing implementation from "gRPC FUSE" to "VirtioFS" seems to have solved it.

@aofarrel
Copy link

I can confirm that disabling this setting, Docker for Mac > Preferences > Experimental Features > Use gRPC for file sharing makes the miniwdl unit test suite work well on my MacBook, while it's busted with that setting on as default.

Just popping in to say that as of more recent versions of Docker, this setting has moved to General, and it seems gRPC FUSE might be the default. gRPC FUSE seems to still problematic as stated above, although in my case I got errors even though I was using a test workflow with no inputs at all.
Screenshot 2023-08-11 at 12 50 59 PM

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

5 participants