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
Allow parallel blaze invocations #532
Comments
Doing multiple builds in parallel over possibly slightly different files is - in general - a tricky problem. That said, we're currently not even able to run commands in parallel even if we know that they can't interfere (say bazel help and bazel info). Even passing information from one command to another isn't currently possible. The client takes an exclusive lock every time you run bazel, and the server doesn't have the ability to handle two connections at the same time. I've made some progress on updating our core code for this, recently. Check out my changes to BlazeRuntime.java and CommandEnvironment.java. It's not a high priority for me right now, though, so progress will likely be patchy. |
If you're building the targets with the same configuration though (e.g., and if they have any shared dependencies, bazel will build those only once. On Mon, Oct 26, 2015 at 4:56 PM Ulf Adams notifications@github.com wrote:
|
@ulfjack I've been thinking about adding |
bazel run now has a --direct_run option that releases the lock before running the tool (and also allows the tool direct access to the terminal), so you don't need to work around that specifically anymore. We're working on enabling that by default for all bazel run invocations, but are seeing issues due to minor changes in semantics. @lberki |
Actually, I think we can just flip the default in Bazel. In the worst case, we can force it to be turned off internally. Let me send a change... |
@ulfjack That's the best news ever. Just added |
@ulfjack While we're on the topic, maybe consider making |
With bazel 3.2.0 I get a message saying |
It only makes it possible to run the binary run by |
Hi there! We're doing a clean up of old issues and will be closing this one. Please reopen if you’d like to discuss anything further. We’ll respond as soon as we have the bandwidth/resources to do so. |
@kshyanashree, to me this seems interesting enough--certainly long term--to be worth keeping open! |
Does it make sense to create a new issue for allowing multiple |
Unfortunately, no. |
The time spent waiting for another Bazel command seems wasted. Can Bazel accomplish some work in tandem with the other command since Bazel uses a server daemon?
In particular, can
bazel build //some:target
andbazel build //some/other:target
have their action graphs joined together and each separate command finish when its requested targets are completed?However, at the very least, can Bazel show the progress of the other command?
The text was updated successfully, but these errors were encountered: