-
Notifications
You must be signed in to change notification settings - Fork 842
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
"Exception ~/.stack/indices/Hackage/hackage-security-lock: createDirectory: already exists" #3055
Comments
I've opened an upstream issue for this on the hackage-security tracker: haskell/hackage-security#186 |
@sjakobi Did you by any chance C-c the process twice? Trying to figure out if you are triggering GHC's hard quit mechanism. |
I'm pretty sure I did! Thanks for investigating! |
OK, that's consistent with the behavior you saw: on the second C-c, the RTS hard quits so bracket handlers don't get the opportunity to run. Not much we can do here. |
@ezyang Ah, that's good to know! I think I was under the impression that the first C-c didn't do anything so I C-c'd again. Not sure how much time stack should reasonably take to process the first C-c. |
Yeah, it's definitely tough for users to know about this. I've had some applications where teardown takes some time; I find it helps to emit something like "Application is shutting down, please be patient..." which helps convince people (mostly me) to not C-c again until it is really taking a long time. |
Seems like the exception swallowing is happening in hackage-security - haskell/hackage-security#187 |
This happened to me twice in two days, on a CI server where multiple stack builds happen in parallel |
@sjakobi ran into this issue as well. this line worked, thanks. |
I got the following exception after aborting the previous stack command with Ctrl+C:
My guess is that the lock directory wasn't removed during the exception cleanup for the previous command.
rmdir ~/.stack/indices/Hackage/hackage-security-lock
fixed the immediate problem.The text was updated successfully, but these errors were encountered: