palantir / godel

Go tool for formatting, checking, building, distributing and publishing projects

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Make godel update operation resilient to concurrent operations

nmiyake opened this issue · comments

What happened?

Running ./godelw update in multiple places concurrently for a version of godel that has not yet been downloaded can fail due to race conditions such as trying to remove a non-empty directory.

Similar to #533 and #539, but is slightly different because this is in Go code that installs a godel version (so it is not the godelw script and it is not artifact downloads).

What did you want to happen?

Operation should not fail even when performed concurrently across different processes.