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

Etcd does not run on Bash on Ubuntu on Windows #8178

Closed
RobinGeuze opened this issue Jun 26, 2017 · 4 comments · Fixed by #8286
Closed

Etcd does not run on Bash on Ubuntu on Windows #8178

RobinGeuze opened this issue Jun 26, 2017 · 4 comments · Fixed by #8286

Comments

@RobinGeuze
Copy link

When running etcd on Bash on Ubuntu on Windows in any form (I'm mainly trying to run the integration test, but the normal application doesn't start either), I get the following error:

etcdserver: create wal error: rename /tmp/etcd930045107/member/wal.tmp /tmp/etcd930045107/member/wal: permission denied

I did some digging and found the following comment in etcd/wal/wal_windows.go and I suspect the same thing is valid for the filesystem in Bash on Ubuntu on Windows:

// rename of directory with locked files doesn't work on
// windows; close the WAL to release the locks so the directory
// can be renamed
@philips
Copy link
Contributor

philips commented Jun 27, 2017

This is a BashOnWindows issue: microsoft/WSL#2243

@philips
Copy link
Contributor

philips commented Jun 27, 2017

@RobinGeuze in the meantime just use etcd.exe from the etcd windows releases as this is an issue with how BashOnWindows emulates POSIX filesystems, not an issue with etcd.

@RobinGeuze
Copy link
Author

I actually managed to "fix" it by including the code from wal_windows.go in the wal_unix.go in case the rename fails (a retry if you will). However then I run into boltdb/bolt#702 so that joy was short lived :P

@heyitsanthony
Copy link
Contributor

Partially duplicates #6984. The wal package / fileutil can dynamically check if the FS permits locked directory renames then act accordingly instead of tying it to the build target OS like how it is now.

@heyitsanthony heyitsanthony self-assigned this Jul 18, 2017
@heyitsanthony heyitsanthony added this to the v3.3.0-maybe milestone Jul 18, 2017
heyitsanthony added a commit to heyitsanthony/etcd that referenced this issue Jul 19, 2017
Detecting windows at compile time isn't enough since etcd might be
on linux but the fs is backed by windows.

Fixes: etcd-io#8178
Fixes: etcd-io#6984
heyitsanthony added a commit to heyitsanthony/etcd that referenced this issue Jul 20, 2017
Detecting windows at compile time isn't enough since etcd might be
on linux but the fs is backed by windows.

Fixes: etcd-io#8178
Fixes: etcd-io#6984
heyitsanthony added a commit to heyitsanthony/etcd that referenced this issue Jul 20, 2017
Detecting windows at compile time isn't enough since etcd might be
on linux but the fs is backed by windows.

Fixes: etcd-io#8178
Fixes: etcd-io#6984
visheshnp pushed a commit to visheshnp/etcd that referenced this issue Aug 3, 2017
Detecting windows at compile time isn't enough since etcd might be
on linux but the fs is backed by windows.

Fixes: etcd-io#8178
Fixes: etcd-io#6984
@gyuho gyuho removed this from the v3.3.0-maybe milestone Nov 21, 2017
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Development

Successfully merging a pull request may close this issue.

5 participants