bazelbuild / bazelbuild/bazel

Timeout execution requirement doesn't work on starlark rules and genrule

Open
#12,349 18 comments 2 reactions 1 assignee Assigned to @coeuvre View on GitHub
P2 team-Remote-Exec type: feature request
Dominant language
Java
Stars
25.8k
Forks
4.6k
Avg merge
2d 20h
Merged PRs (30d)
72

Description

### Description of the problem / feature request:

Support timeout execution requirement on starlark rules and genrules as a way to terminate stuck / hanging actions, so that their stderr / stdout can be printed out to aid debugging.

### Feature requests: what underlying problem are you trying to solve with this feature?

Without such a feature when an action hangs, it can be hard to see the output it has printed so far, especially on non-interactive systems like CI. Another option might be to stream the output of the actions like requested in https://github.com/bazelbuild/bazel/issues/7213, but that would require running actions sequentially, so it could only used when reproducing the issue.

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

Create a starlark rule and a genrule that never terminate, set `execution_requirements = {"timeout": "5"}` on the starlark rule, and `tags = ["timeout:5"]` on both, then run the build with `--experimental_allow_tags_propagation`, note that neither rule is terminated.

### What operating system are you running Bazel on?

Both macOS and Linux

### What's the output of `bazel info release`?

```
release 3.3.0
```

### Have you found anything relevant by searching the web?

https://github.com/bazelbuild/bazel/issues/7766
https://github.com/bazelbuild/bazel/issues/8830

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.