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

Bazel crashes on macos with "failed to delete output files before executing action" #8963

Closed
johnedmonds opened this issue Jul 23, 2019 · 8 comments
Labels
P1 I'll work on this now. (Assignee required)

Comments

@johnedmonds
Copy link

ATTENTION! Please read and follow:

  • if this is a question about how to build / test / query / deploy using Bazel, or a discussion starter, send it to [email protected]
  • if this is a bug or feature request, fill the form below as best as you can.

Description of the problem / feature request:

On macos, Bazel crashes with the error "failed to delete output files before executing action." Underlying cause is an IOException because the filename is too long. This is fixed by 7749781 (see the change in FunctionTransitionUtil.java) but not released.

Bugs: what's the simplest, easiest way to reproduce this bug? Please provide a minimal example if possible.

Add a transition to a rule. The bug triggers when the chain of dependencies with transitions becomes too long.

What operating system are you running Bazel on?

Mac

What's the output of bazel info release?

release 0.28.0

If bazel info release returns "development version" or "(@non-git)", tell us how you built Bazel.

Replace this line with your answer.

What's the output of git remote get-url origin ; git rev-parse master ; git rev-parse HEAD ?

Replace this line with your answer.

Have you found anything relevant by searching the web?

Replace these lines with your answer.

Places to look:

Any other information, logs, or outputs that you want to share?

Replace these lines with your answer.

If the files are large, upload as attachment or provide link.

@laurentlb laurentlb added P1 I'll work on this now. (Assignee required) release blocker labels Jul 23, 2019
@laurentlb
Copy link
Contributor

@juliexxia @gregestren
Is it a new bug in Bazel 0.28, or is it older?
Can you confirm this change should be cherry-picked and we need a patch release?

@jin
Copy link
Member

jin commented Jul 23, 2019

I can confirm I ran into this bug into 0.28.1.

@gregestren
Copy link
Contributor

This bug should have existed ever since transitions were available. 7749781 is an upgrade over the original logic.

So this shouldn't be a regression and I'm not sure a patch release is necessary as it should have never been possible to rely on this working correctly in the first place.

@johnedmonds what kind of impact are you facing from this?

@johnedmonds
Copy link
Author

@gregestren That all sounds correct. Impact is that we need to use a pre-release version of bazel to build bazelbuild/rules_rust#240.

@laurentlb
Copy link
Contributor

It doesn't seem to qualify for a patch release.
I suggest to continue using your own version of Bazel until the next release (0.29, in August).

@chenmy0917
Copy link

chenmy0917 commented Apr 6, 2021

I also encountered this problem, can you help me, look forward your reply @laurentlb

OS: Ubuntu 16.04

Bazel Version:
image

Error:

  1. failed to delete output files before executing action
    image

  2. File name too long [36]
    image

@gregestren
Copy link
Contributor

Hey @chenmy0917 . While this is the same error (File name too long), I think the cause is coming from a different place (it's not related to FunctionTransitionUtil). I recommend starting a new, dedicated bug for your failure.

@chenmy0917
Copy link

Hey @chenmy0917 . While this is the same error (File name too long), I think the cause is coming from a different place (it's not related to FunctionTransitionUtil). I recommend starting a new, dedicated bug for your failure.

okay, thanks for your suggestion

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
P1 I'll work on this now. (Assignee required)
Projects
None yet
Development

No branches or pull requests

5 participants