commit | 93029d8f1f01be440d8e06cce9585ad912f9169b | [log] [tgz] |
---|---|---|
author | Tiago Quelhas <tjgq@google.com> | Wed Apr 20 03:47:04 2022 -0700 |
committer | Copybara-Service <copybara-worker@google.com> | Wed Apr 20 03:47:54 2022 -0700 |
tree | 96e7fb1d4ad3966798cfd9970c27087be2920b1f | |
parent | d8feb4de244439f770106f339ed1a569e55da1fd [diff] |
Store start/end timestamps of locally executed actions in the disk cache. This is necessary to ensure that the generate-xml.sh action associated with every test, which embeds the test runner wall time, doesn't execute again when run on a warm disk cache. This PR makes the following changes: 1. Add SpawnResult#getStartTime alongside existing #getWallTime and populate it in various SpawnRunner implementations. 2. Populate the ExecutedActionMetadata with the start/wall times for a locally executed spawn when storing it in the disk cache. 3. Populate the SpawnResult with the start/wall times for a spawn retrieved from the disk cache. 4. Add a regression test for the scenario described above. In order to avoid changes to the remote execution protocol, the start/end time are stored in the existing ActionResult.execution_metadata fields. Since there is some mismatch between this field and the metrics available in a SpawnResult, this might be revisited later. Fixes #14426. Closes #15256. PiperOrigin-RevId: 443052342
{Fast, Correct} - Choose two
Build and test software of any size, quickly and reliably.
Speed up your builds and tests: Bazel rebuilds only what is necessary. With advanced local and distributed caching, optimized dependency analysis and parallel execution, you get fast and incremental builds.
One tool, multiple languages: Build and test Java, C++, Android, iOS, Go, and a wide variety of other language platforms. Bazel runs on Windows, macOS, and Linux.
Scalable: Bazel helps you scale your organization, codebase, and continuous integration solution. It handles codebases of any size, in multiple repositories or a huge monorepo.
Extensible to your needs: Easily add support for new languages and platforms with Bazel's familiar extension language. Share and re-use language rules written by the growing Bazel community.
Follow our tutorials:
To report a security issue, please email security@bazel.build with a description of the issue, the steps you took to create the issue, affected versions, and, if known, mitigations for the issue. Our vulnerability management team will respond within 3 working days of your email. If the issue is confirmed as a vulnerability, we will open a Security Advisory. This project follows a 90 day disclosure timeline.
See CONTRIBUTING.md