| Commit message (Collapse) | Author | Age |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
-XX:TieredStopAtLevel=1 instead of -client, as the latter is ignored on 64-bit JVMs since at least JDK 6.
The new flags have been shown to cut down CPU time by 50% due to reduced time spent in JIT and improving overall run time for short running actions, some times also cutting them in half.
Here's a benchmark of Bazel building itself, giving a nice 2-4x speedup:
./output/bazel clean && ./output/bazel build //src:bazel
Bazel before this change:
INFO: Elapsed time: 197.783s, Critical Path: 194.10s
INFO: Elapsed time: 198.928s, Critical Path: 195.65s
INFO: Elapsed time: 194.913s, Critical Path: 191.56s
Bazel before this change with --strategy=Javac=worker:
INFO: Elapsed time: 130.436s, Critical Path: 124.27s
INFO: Elapsed time: 116.114s, Critical Path: 112.30s
INFO: Elapsed time: 116.852s, Critical Path: 84.45s
Bazel with this change:
INFO: Elapsed time: 121.625s, Critical Path: 119.08s
INFO: Elapsed time: 119.401s, Critical Path: 115.80s
INFO: Elapsed time: 121.198s, Critical Path: 119.03s
Bazel with this change and --strategy=Javac=worker:
INFO: Elapsed time: 54.456s, Critical Path: 51.28s
INFO: Elapsed time: 53.272s, Critical Path: 51.09s
INFO: Elapsed time: 52.966s, Critical Path: 49.86s
Bazel with this change and --strategy=Javac=worker and stripping -XX:TieredStopAtLevel=1 from JVM flags when using workers:
INFO: Elapsed time: 61.599s, Critical Path: 58.93s
INFO: Elapsed time: 48.695s, Critical Path: 45.02s
INFO: Elapsed time: 46.874s, Critical Path: 43.91s
INFO: Elapsed time: 46.174s, Critical Path: 43.32s
(The latter is a possible optimization for workers and it's also nice to know that the limited tiered compilation does not hurt their performance.)
--
MOS_MIGRATED_REVID=125448089
|
|
|
|
|
|
|
| |
Fixes #527.
--
MOS_MIGRATED_REVID=125447030
|
|
|
|
|
|
|
| |
Fixes #1423
--
MOS_MIGRATED_REVID=125445881
|
|
|
|
|
|
|
| |
instead of Java's Class<?>.
--
MOS_MIGRATED_REVID=125443529
|
|
|
|
|
|
|
|
|
|
|
|
| |
There is no reason for shell scripts to end in .sh or .bash: shell scripts
can, and often do, have no extension because they are intended to be directly
runnable from the source tree.
Therefore, change the sh_* rules to allow any filename in their srcs
attribute.
--
MOS_MIGRATED_REVID=125442088
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
*** Reason for rollback ***
Broke Bazel build on Ubuntu 15.10, e.g.:
http://ci.bazel.io/view/Bazel%20bootstrap%20and%20maintenance/job/Bazel/JAVA_VERSION=1.8,PLATFORM_NAME=ubuntu_15.10-x86_64/611/console
*** Original change description ***
Make create_embedded_tools.sh an sh script
This script is called directly (and not as an argument to the shell),
hence the #!-line needs to be correct. As the script does not use any
bash-specific feature, we can maintain it as a script for the POSIX
shell, which has the advantage that the path is canonical.
--
MOS_MIGRATED_REVID=125441679
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=125441622
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
*** Reason for rollback ***
Breaks Bazel build on Ubuntu 15.10. Manually tested that rolling this back fixes the build.
*** Original change description ***
sandbox: Mount input files and directories actually read-only.
Fixes #1364.
RELNOTES[INC]: Bazel's sandbox mounts input files read-only in this release. If your build suddenly fails due to tools not being able to write to files, then this is probably working as intended (you should never modify input files in your build), but please feel free to provide feedback.
--
MOS_MIGRATED_REVID=125439581
|
|
|
|
|
|
|
|
|
|
|
|
| |
This adds a new configuration option that allows disabling the creation of symlink forest for runfiles.
On Windows, symlink forest is disabled by default; only the runfiles manifest is created.
For shell tests, a function 'rlocation' is provided that converts from runfiles location to a real location.
Work towards #1212.
--
MOS_MIGRATED_REVID=125439553
|
|
|
|
|
|
|
| |
causing LocalLinuxSandboxedStrategyTest to fail due to unexpected lines in the output.
--
MOS_MIGRATED_REVID=125439352
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=125436393
|
|
|
|
|
|
|
|
|
| |
default shell environment.
Fixes #1420, fixes #1358, fixes #1341, fixes #1152.
--
MOS_MIGRATED_REVID=125429839
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=125429700
|
|
|
|
|
|
|
| |
This is needed for generate_workspace to behave correctly on OS X, see https://bazel-review.googlesource.com/#/c/3460.
--
MOS_MIGRATED_REVID=125428956
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=125428066
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Currently, the experimental UI always shows the 3 oldest, still running actions.
While this seems a reasonable default, some users requested to be able to change
the number of actions shown. Hence replace the hard-coded value by a flag.
While there, also fix an off-by-one error in deciding when to put the ellipsis
symbol.
--
Change-Id: I037d208360fa1d3f100c99ab1ab1f5fc140138ac
Reviewed-on: https://bazel-review.googlesource.com/#/c/3811
MOS_MIGRATED_REVID=125427168
|
|
|
|
|
|
|
| |
purpose.
--
MOS_MIGRATED_REVID=125426709
|
|
|
|
|
|
|
|
|
| |
*** Reason for rollback ***
Doesn't handle aapt that doesn't generate R.txt properly.
--
MOS_MIGRATED_REVID=125405481
|
|
|
|
|
|
|
|
| |
to remove the call from RuleConfiguredTarget.getProvider() and instead check the
types when the providers ImmutableMap is built.)
--
MOS_MIGRATED_REVID=125389561
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=125385321
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
For android_binary rules, we regenerate all of
the R.java of the libraries to get the final
resource IDs. Compiling all of them together can
be slow with the normal JavaBuilder, so add a
specialized class writer.
Example build with many R.java classes:
- R.java -> R.class via JavaBuilder: over 80s
- ErrorProne takes about 40% of that. So turning off
ErrorProne would be projected to be 48s.
Some of ErrorProne slowness is from static field
checks (e.g., on Flag classes), which may look
up the same Type over and over.
In comparison, if we write our own bytecode with ASM:
- ~16s total
- 4.7s to parse R.txt
- 4.8s to write class files
- 5.8s to copy and compress .jar
TODO: clean up SymbolLoader patching (upstream)
This only creates the action. We will need to
separately wire this up in blaze.
NOTE: This also makes the exising R.txt loading
used by live code multi-threaded, since that is
partly I/O-bound. Something to watch out for
(for flakiness, etc.) once this is submitted.
--
MOS_MIGRATED_REVID=125384467
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
configurations.
This is important for dynamic configurations.
invalidatePackages() invalidates every file. This includes CROSSTOOL,
which the CppConfiguration fragment depends on.
For static configurations, this doesn't matter because all configurations
and their fragments are pre-computed at the beginning of the build (or
in the case of tests before the test case starts).
For dynamic configurations, the configuration can get custom-created
each configured target. When that happens after invalidatePackages,
a new CppConfiguration instance gets created. This can impact code
like CcLibraryHelper.addDeps(), which assumes equality (CppConfiguration
has no .equals() method).
Normally that's not a problem because the same CppConfiguration instance
is used for every target in the post-invalidatePackages() graph. But
host configurations break this: we keep a non-Skyframe host config cache
in SkyframeBuildView.hostConfigurationCache. Without this change, it
doesn't get cleared out, so it keeps old pre-invalidation references that
under certain circumstances get applied to post-invalidation targets.
--
MOS_MIGRATED_REVID=125379342
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=125376859
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=125376554
|
|
|
|
|
|
|
|
| |
Avoids constructing and manipulating expected value sets
for containsExactlyElementsIn when containsExactly will do.
--
MOS_MIGRATED_REVID=125371446
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=125368119
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=125362963
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=125360308
|
|
|
|
|
|
|
|
|
|
|
| |
nodes, where there is no work to do anyway.
This triggered some non-determinism that we explicitly workaround in the unit tests.
Also add a comment about a potential but unrelated optimization.
--
MOS_MIGRATED_REVID=125355303
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=125354844
|
|
|
|
|
|
|
| |
Fixes #642.
--
MOS_MIGRATED_REVID=125351602
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=125343317
|
|
|
|
|
|
|
| |
Fixes #1314.
--
MOS_MIGRATED_REVID=125340361
|
|
|
|
|
|
|
| |
Fixes #1110.
--
MOS_MIGRATED_REVID=125339849
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
To keep the noise of messages in the scroll-back buffer low, limit
which test summaries are shown there.
- If a test fails to build, the error message about the build failure
is already in the scroll-back buffer---and more useful to the user
anyway.
- If a test is not run (either because the user interrupted the build,
or because of a build error), then either the user is aware of it
anyway or the information about the build failure is present and
more useful. Also, this is only detected at the end of the build,
were a summary of the tests is shown; hence avoid duplication here.
- If a test has status failed and there is precisely one failure log,
then the summary does not provide any useful information compared
to the individual FAIL message in the scrollback buffer.
While there, also show the precise status of the summary.
--
Change-Id: I13665db24f956c8d8b651dc38859649085b8bbcf
Reviewed-on: https://bazel-review.googlesource.com/#/c/3830
MOS_MIGRATED_REVID=125339810
|
|
|
|
|
|
|
| |
--
Change-Id: I48311303c318127eb2a089ae46f892081d2d8584
Reviewed-on: https://bazel-review.googlesource.com/#/c/3842/
MOS_MIGRATED_REVID=125337633
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=125336857
|
|
|
|
|
|
|
| |
links.
--
MOS_MIGRATED_REVID=125336775
|
|
|
|
|
|
|
| |
Fixes #1333.
--
MOS_MIGRATED_REVID=125335174
|
|
|
|
|
|
|
| |
Part 1 of many for #1262, rolling forward.
--
MOS_MIGRATED_REVID=125334954
|
|
|
|
|
|
|
| |
Not that it does anything, but let's not encourage people.
--
MOS_MIGRATED_REVID=125334321
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Newly passing:
//src/test/java/com/google/devtools/build/...
lib:syntax_test
lib/skylark:SkylarkTests
lib:analysis_actions_test
lib:pkgcache_test
--
Change-Id: Iefdcf9e90ad28e664126aa7269487db95da1000a
Reviewed-on: https://bazel-review.googlesource.com/#/c/3840
MOS_MIGRATED_REVID=125324588
|
|
|
|
|
|
|
|
|
| |
Fixes #1364.
RELNOTES[INC]: Bazel's sandbox mounts input files read-only in this release. If your build suddenly fails due to tools not being able to write to files, then this is probably working as intended (you should never modify input files in your build), but please feel free to provide feedback.
--
MOS_MIGRATED_REVID=125324318
|
|
|
|
|
|
|
|
| |
a noticeable hotspot in profiles. (It would be even better if we could avoid
constructing this string until we actually need to produce an error message.)
--
MOS_MIGRATED_REVID=125323226
|
|
|
|
|
|
|
| |
(But this will make it easier to try out the overlayfs-based sandbox later.)
--
MOS_MIGRATED_REVID=125320914
|
|
|
|
|
|
|
|
|
|
| |
this is a noticeable hotspot in profiles of the loading phase.
(Every caller of lookup() or importSymbol() catches this and either
converts it to a non-exceptional condition or throws a new exception
which will have its own stack trace.)
--
MOS_MIGRATED_REVID=125320351
|
|
|
|
|
|
|
|
|
| |
handler in the client.
This makes Ctrl-C work on Windows somewhat: in particular, in non-batch mode and while no actions are running.
--
MOS_MIGRATED_REVID=125318172
|
|
|
|
|
|
|
|
|
| |
Adds a runtime_deps attribute to compilation rules (including objc_binary) that imports a dynamic framework (generated either via the objc_framework or ios_framework rules) into an app bundle without linking against it at build time.
RELNOTES: objc_binary now supports late-loaded dynamic frameworks.
--
MOS_MIGRATED_REVID=125261347
|
|
|
|
|
|
|
| |
removed along with the per-order expander classes).
--
MOS_MIGRATED_REVID=125215096
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=125188645
|