commit | d3c407395840904cad1c6850e8e3737bd0e5d0ea | [log] [tgz] |
---|---|---|
author | gregce <gregce@google.com> | Thu Apr 04 08:46:17 2019 -0700 |
committer | Copybara-Service <copybara-worker@google.com> | Thu Apr 04 08:47:55 2019 -0700 |
tree | b4eb9b9646e80b3861c1144e8cbe6ac412efae18 | |
parent | 4a69b1b4f5cf96e5e72084e4d0cb1dbe39dca91e [diff] |
Fix failing test due to JDK bug. The bug: https://bugs.java.com/bugdatabase/view_bug.do?bug_id=8169685 This came up when diagnosing a mind-numbingly perplexing failure on RawAttributeMapperTest from https://buildkite.com/bazel/google-bazel-presubmit/builds/17716#f428d533-71d6-4483-b138-5c21345b97f2, happening due to change https://bazel.googlesource.com/bazel/+/cbcffa054c50fd28e7c2fe5fe935d1991a322527 which has nothing to do with RawAttributeMapperTest at all. The failure was triggered by removing LicensingTests.java. This changed how JUnit scheduled analysis_select_test. This caused the ClassCastException checked in RawAttributeMapperTest#testGetAttribute,testVisitLabels to be compiled instead of interpreted. Due to https://bugs.java.com/bugdatabase/view_bug.do?bug_id=8169685, this meant its stack trace was no longer available, so the tests couldn't check its error message. I was able to produce a minimal repro by adding back in LicensingTests into the srcs of analysis_select_test, then ripping out all of LicensingTests except for testLicenseCheckingTakesOnlyOneSelectBranch. When I commented out this line: // ConfiguredTarget eve = getConfiguredTarget("//eden:eve"); RawAttributeMapperTest failed. When I left it in, the test succeeded. See https://github.com/bazelbuild/bazel/issues/7444. PiperOrigin-RevId: 241937508
{Fast, Correct} - Choose two
Build and test software of any size, quickly and reliably.
Speed up your builds and tests: Bazel only rebuilds 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:
See CONTRIBUTING.md
Bazel is released in ‘Beta’. See the product roadmap to learn about the path toward a stable 1.0 release.