Skip to content

Cargo does not recover from failed git update (File lock issue?) #2533

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

Closed
jfhumann opened this issue Mar 30, 2016 · 12 comments
Closed

Cargo does not recover from failed git update (File lock issue?) #2533

jfhumann opened this issue Mar 30, 2016 · 12 comments

Comments

@jfhumann
Copy link

I'm currently trying to build servo, which uses cargo for this (Current nightly is used afaik).

When updating some git repositories servo depends on cargo fails (not always, but sometimes (I'm puzzled about this, but I think this might be another issue completely)).
After manually restarting the cargo build, cargo continues, but when it again handles the git repository it previously failed on it just prints "Blocking waiting for file lock on the git checkout" and waits there indefinitely.

I attached a full log of what I did.
cargo-lock.txt

When searching for this in the existing issues I found #2486, which is a quite recent pull request apparently concerning the same message I got. So maybe this might be related to that change.

@jfhumann
Copy link
Author

Please let me know if you need additional information, I'll try to provide everything which might come in handy.

@alexcrichton
Copy link
Member

Hm when Cargo prints that it's blocking, are you sure that there are no other processes on the system that have that lock acquired? It may be the case that some Cargo may be spuriously running around in the background for example.

@jfhumann
Copy link
Author

Hm at least I can't think of any processes running that acquire this lock. Is there a good way to find out?

Well I already tried:

  • Restarting my system
  • Deleting the whole local servo project, recreating it with a new git clone
  • Deleting ~/.cargo which somehow had been created.

@alexcrichton
Copy link
Member

Whoa lol if after a restart the directory is still locked then that's probably a bug in Cargo!

Could you try running cargo with RUST_LOG=debug and gist the output of that as well?

@emilio
Copy link

emilio commented Mar 30, 2016

I can reproduce it also. RUST_LOG=debug:

DEBUG:cargo::build: executing; cmd=cargo-build; args=["cargo", "build"]
DEBUG:cargo::ops::cargo_compile: compile; manifest-path=/home/emilio/projects/moz/servo/components/servo/Cargo.toml
DEBUG:cargo::ops::cargo_compile: loaded package; package=servo v0.0.1 (file:///home/emilio/projects/moz/servo/components/servo)
DEBUG:cargo::core::registry: load/missing  file:///home/emilio/projects/moz/servo/components/servo
DEBUG:cargo::core::registry: load/missing  registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/missing  file:///home/emilio/projects/moz/servo/components/layout
DEBUG:cargo::core::registry: load/missing  file:///home/emilio/projects/moz/servo/components/net_traits
DEBUG:cargo::core::registry: load/missing  https://github.com/servo/webrender_traits#2ad5e68f
INFO:cargo::sources::git::utils: update submodules for: "/home/emilio/projects/moz/servo/.cargo/git/checkouts/webrender_traits-e24a580db67dabe6/master/"
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/missing  file:///home/emilio/projects/moz/servo/components/script
DEBUG:cargo::core::registry: load/missing  file:///home/emilio/projects/moz/servo/components/script_traits
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/missing  file:///home/emilio/projects/moz/servo/components/devtools
DEBUG:cargo::core::registry: load/missing  file:///home/emilio/projects/moz/servo/components/profile
DEBUG:cargo::core::registry: load/missing  file:///home/emilio/projects/moz/servo/components/util
DEBUG:cargo::core::registry: load/missing  file:///home/emilio/projects/moz/servo/components/webdriver_server
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/missing  file:///home/emilio/projects/moz/servo/components/profile_traits
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/missing  https://github.com/browserhtml/browserhtml?branch=gh-pages#0ca50842
INFO:cargo::sources::git::utils: update submodules for: "/home/emilio/projects/moz/servo/.cargo/git/checkouts/browserhtml-d8e82257a37d47ff/gh-pages/"
DEBUG:cargo::core::registry: load/missing  https://github.com/ecoal95/rust-offscreen-rendering-context#9c123fa5
INFO:cargo::sources::git::utils: update submodules for: "/home/emilio/projects/moz/servo/.cargo/git/checkouts/rust-offscreen-rendering-context-49a578ae84e64b98/master/"
DEBUG:cargo::core::registry: load/missing  https://github.com/servo/webrender#2a71ccb0
INFO:cargo::sources::git::utils: update submodules for: "/home/emilio/projects/moz/servo/.cargo/git/checkouts/webrender-ec406de34643a7ef/master/"
DEBUG:cargo::core::registry: load/missing  https://github.com/servo/rust-layers#3cb5df49
INFO:cargo::sources::git::utils: update submodules for: "/home/emilio/projects/moz/servo/.cargo/git/checkouts/rust-layers-c02709c0157e02cd/master/"
DEBUG:cargo::core::registry: load/missing  file:///home/emilio/projects/moz/servo/components/devtools_traits
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/missing  file:///home/emilio/projects/moz/servo/components/canvas
DEBUG:cargo::core::registry: load/missing  file:///home/emilio/projects/moz/servo/components/net
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/missing  file:///home/emilio/projects/moz/servo/components/compositing
DEBUG:cargo::core::registry: load/missing  file:///home/emilio/projects/moz/servo/components/style
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/missing  file:///home/emilio/projects/moz/servo/components/msg
DEBUG:cargo::core::registry: load/missing  file:///home/emilio/projects/moz/servo/components/canvas_traits
DEBUG:cargo::core::registry: load/missing  https://github.com/servo/ipc-channel#0774ccb7
INFO:cargo::sources::git::utils: update submodules for: "/home/emilio/projects/moz/servo/.cargo/git/checkouts/ipc-channel-3840821e54ea11a6/master/"
DEBUG:cargo::core::registry: load/missing  file:///home/emilio/projects/moz/servo/components/gfx
DEBUG:cargo::core::registry: load/missing  file:///home/emilio/projects/moz/servo/ports/glutin
DEBUG:cargo::core::registry: load/missing  file:///home/emilio/projects/moz/servo/tests/compiletest/helper
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/missing  file:///home/emilio/projects/moz/servo/tests/compiletest/plugin
DEBUG:cargo::core::registry: load/missing  file:///home/emilio/projects/moz/servo/tests/unit/net
DEBUG:cargo::core::registry: load/missing  file:///home/emilio/projects/moz/servo/tests/unit/style
DEBUG:cargo::core::registry: load/missing  file:///home/emilio/projects/moz/servo/tests/unit/script
DEBUG:cargo::core::registry: load/missing  file:///home/emilio/projects/moz/servo/tests/unit/plugin
DEBUG:cargo::core::registry: load/missing  file:///home/emilio/projects/moz/servo/tests/unit/gfx
DEBUG:cargo::core::registry: load/missing  file:///home/emilio/projects/moz/servo/tests/unit/net_traits
DEBUG:cargo::core::registry: load/missing  file:///home/emilio/projects/moz/servo/tests/unit/layout
DEBUG:cargo::core::registry: load/missing  file:///home/emilio/projects/moz/servo/tests/unit/util
DEBUG:cargo::core::registry: load/missing  https://github.com/servo/gaol#cbb25180
INFO:cargo::sources::git::utils: update submodules for: "/home/emilio/projects/moz/servo/.cargo/git/checkouts/gaol-03c0971bbaa6c24c/master/"
DEBUG:cargo::core::registry: load/match    https://github.com/servo/gaol#cbb25180
DEBUG:cargo::core::registry: load/match    https://github.com/servo/gaol#cbb25180
DEBUG:cargo::core::registry: load/match    https://github.com/servo/gaol#cbb25180
DEBUG:cargo::core::registry: load/match    https://github.com/servo/gaol#cbb25180
DEBUG:cargo::core::registry: load/match    https://github.com/servo/gaol#cbb25180
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/missing  file:///home/emilio/projects/moz/servo/components/gfx_traits
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/precise  file:///home/emilio/projects/moz/servo/components/script
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    https://github.com/servo/ipc-channel#0774ccb7
DEBUG:cargo::core::registry: load/precise  file:///home/emilio/projects/moz/servo/components/profile_traits
DEBUG:cargo::core::registry: load/missing  file:///home/emilio/projects/moz/servo/components/plugins
DEBUG:cargo::core::registry: load/missing  file:///home/emilio/projects/moz/servo/components/style_traits
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/precise  file:///home/emilio/projects/moz/servo/components/canvas_traits
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/precise  file:///home/emilio/projects/moz/servo/components/util
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/precise  file:///home/emilio/projects/moz/servo/components/style
DEBUG:cargo::core::registry: load/precise  file:///home/emilio/projects/moz/servo/components/gfx
DEBUG:cargo::core::registry: load/precise  file:///home/emilio/projects/moz/servo/components/net_traits
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/precise  file:///home/emilio/projects/moz/servo/components/msg
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/missing  file:///home/emilio/projects/moz/servo/components/range
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/missing  file:///home/emilio/projects/moz/servo/components/layout_traits
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/precise  file:///home/emilio/projects/moz/servo/components/script_traits
DEBUG:cargo::core::registry: load/match    https://github.com/servo/webrender_traits#2ad5e68f
DEBUG:cargo::core::registry: load/missing  https://github.com/servo/rust-azure#bb2fab86
INFO:cargo::sources::git::utils: update submodules for: "/home/emilio/projects/moz/servo/.cargo/git/checkouts/rust-azure-97bcec2370a94878/master/"
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/precise  file:///home/emilio/projects/moz/servo/components/msg
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/precise  file:///home/emilio/projects/moz/servo/components/util
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    https://github.com/servo/ipc-channel#0774ccb7
DEBUG:cargo::core::registry: load/precise  file:///home/emilio/projects/moz/servo/components/plugins
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/precise  file:///home/emilio/projects/moz/servo/components/util
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/precise  file:///home/emilio/projects/moz/servo/components/msg
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    https://github.com/servo/rust-layers#3cb5df49
DEBUG:cargo::core::registry: load/match    https://github.com/servo/rust-azure#bb2fab86
DEBUG:cargo::core::registry: load/precise  file:///home/emilio/projects/moz/servo/components/plugins
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    https://github.com/ecoal95/rust-offscreen-rendering-context#9c123fa5
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    https://github.com/servo/ipc-channel#0774ccb7
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::resolver: checking if heapsize_plugin v0.1.4 is already activated
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    https://github.com/servo/ipc-channel#0774ccb7
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/precise  file:///home/emilio/projects/moz/servo/components/plugins
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/precise  file:///home/emilio/projects/moz/servo/components/util
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    https://github.com/servo/webrender_traits#2ad5e68f
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    https://github.com/servo/rust-layers#3cb5df49
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/precise  file:///home/emilio/projects/moz/servo/components/plugins
DEBUG:cargo::core::registry: load/match    https://github.com/servo/ipc-channel#0774ccb7
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::resolver: checking if log v0.3.5 is already activated
DEBUG:cargo::core::resolver: checking if util v0.0.1 (file:///home/emilio/projects/moz/servo/components/util) is already activated
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::resolver: checking if log v0.3.5 is already activated
DEBUG:cargo::core::resolver: checking if webrender_traits v0.1.0 (https://github.com/servo/webrender_traits#2ad5e68f) is already activated
DEBUG:cargo::core::resolver: checking if cssparser v0.5.5 is already activated
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::resolver: checking if heapsize v0.3.5 is already activated
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::resolver: checking if aster v0.14.0 is already activated
DEBUG:cargo::core::resolver: checking if kernel32-sys v0.2.1 is already activated
DEBUG:cargo::core::resolver: checking if serde v0.7.0 is already activated
DEBUG:cargo::core::resolver: checking if rustc-serialize v0.3.16 is already activated
DEBUG:cargo::core::resolver: checking if euclid v0.6.4 is already activated
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::resolver: checking if euclid v0.6.4 is already activated
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::resolver: checking if heapsize v0.3.5 is already activated
DEBUG:cargo::core::resolver: checking if num v0.1.31 is already activated
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::resolver: checking if rustc-serialize v0.3.16 is already activated
DEBUG:cargo::core::resolver: checking if heapsize v0.3.5 is already activated
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::resolver: checking if heapsize v0.3.5 is already activated
DEBUG:cargo::core::resolver: checking if rustc-serialize v0.3.16 is already activated
DEBUG:cargo::core::resolver: checking if khronos_api v1.0.0 is already activated
DEBUG:cargo::core::resolver: checking if log v0.3.5 is already activated
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::resolver: checking if serde v0.7.0 is already activated
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::resolver: checking if heapsize_plugin v0.1.4 is already activated
DEBUG:cargo::core::resolver: checking if serde v0.7.0 is already activated
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::resolver: checking if log v0.3.5 is already activated
DEBUG:cargo::core::resolver: checking if serde v0.7.0 is already activated
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::resolver: checking if libc v0.2.4 is already activated
DEBUG:cargo::core::resolver: checking if serde v0.7.0 is already activated
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::resolver: checking if serde_macros v0.7.0 is already activated
DEBUG:cargo::core::resolver: checking if libc v0.2.4 is already activated
DEBUG:cargo::core::resolver: checking if serde v0.7.0 is already activated
DEBUG:cargo::core::resolver: checking if lazy_static v0.1.15 is already activated
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::resolver: checking if openssl-sys v0.7.8 is already activated
DEBUG:cargo::core::resolver: checking if util v0.0.1 (file:///home/emilio/projects/moz/servo/components/util) is already activated
DEBUG:cargo::core::resolver: checking if libc v0.2.4 is already activated
DEBUG:cargo::core::resolver: checking if libc v0.2.4 is already activated
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::resolver: checking if libressl-pnacl-sys v2.1.6 is already activated
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::resolver: checking if msg v0.0.1 (file:///home/emilio/projects/moz/servo/components/msg) is already activated
DEBUG:cargo::core::resolver: checking if gcc v0.3.17 is already activated
DEBUG:cargo::core::resolver: checking if winapi v0.2.6 is already activated
DEBUG:cargo::core::resolver: checking if winapi v0.2.6 is already activated
DEBUG:cargo::core::resolver: checking if serde_macros v0.7.0 is already activated
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/missing  https://github.com/servo/rust-mozjs#6f1eb4ea
INFO:cargo::sources::git::utils: update submodules for: "/home/emilio/projects/moz/servo/.cargo/git/checkouts/rust-mozjs-ebb4917e843c0a11/master/"
DEBUG:cargo::core::registry: load/precise  file:///home/emilio/projects/moz/servo/components/range
DEBUG:cargo::core::registry: load/match    https://github.com/ecoal95/rust-offscreen-rendering-context#9c123fa5
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/match    registry https://github.com/rust-lang/crates.io-index
DEBUG:cargo::core::registry: load/mismatch https://github.com/servo/webrender_traits
    Blocking waiting for file lock on the git checkout

@emilio
Copy link

emilio commented Mar 30, 2016

This is the changeset https://github.com/servo/servo/pull/10291/files, the dependency is added and cargo fails to update the .lock files it seems.

@emilio
Copy link

emilio commented Mar 30, 2016

Updating the lockfile (using ./mach cargo-update -p webrender_traits --precise 2ad5e68f3f49c91ef627848d9561649f3c1be344) solves the issue for me.

@alexcrichton
Copy link
Member

Aha, thanks for the info @emilio! I've been able to reproduce locally with a small test case, I'll try to get a fix up quickly

alexcrichton added a commit to alexcrichton/cargo that referenced this issue Mar 30, 2016
Currently sources may acquire file locks to ensure that they're not tampered
with while they're in use. We may load two sources to the same location,
however, in the case of git repositories which need to be updated. Cargo will
first load a locked version of the source and then may load an unlocked version,
and these two loads currently deadlock.

This commit tweaks the logic when updating a source to only update it after the
previous source has been replaced.

Closes rust-lang#2533
@alexcrichton
Copy link
Member

Ok, found a fix!

#2534

@emilio
Copy link

emilio commented Mar 30, 2016

Whoah, awesome! Thanks for the quick fix! :)

@jfhumann
Copy link
Author

Thank you :)

bors added a commit that referenced this issue Apr 2, 2016
Replace existing sources before updating

Currently sources may acquire file locks to ensure that they're not tampered
with while they're in use. We may load two sources to the same location,
however, in the case of git repositories which need to be updated. Cargo will
first load a locked version of the source and then may load an unlocked version,
and these two loads currently deadlock.

This commit tweaks the logic when updating a source to only update it after the
previous source has been replaced.

Closes #2533
@bors bors closed this as completed in #2534 Apr 3, 2016
@theronic
Copy link

This happens for me when you fetched some packages as root, then later tried to build as non-root.

You can verify this by running ls -la rm /Users/petrus/.cargo/registry/index/github.com-1ecc6299db9ec823/.git/FETCH_HEAD and looking at owner of the FETCH_HEAD file.

Solved by deleting FETCH_HEAD and rebuilding.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants