New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 906803 link

Starred by 1 user

Issue metadata

Status: Started
Owner:
OOO until Feb 4th
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Android
Pri: 2
Type: Bug

Blocked on: View detail
issue 908988
issue 924233
issue 924234

Blocking:
issue 921686



Sign in to add a comment

Fast incremental build of chrome_java

Project Member Reported by wnwen@chromium.org, Nov 19

Issue description

chrome_java is our most often-built target. It is slow (javac.py alone takes 39.7s), the entire target is 67.4s.

Goal: Reduce incremental build time for entire target to below 45s.
 
Description: Show this description
Currently working on design doc and testing out ideas.
Status: Started (was: Assigned)
Design doc at go/fast-incremental-build, sent to clank-developer-experience@
Project Member

Comment 4 by bugdroid1@chromium.org, Nov 22

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/3cc62d6500b11c4ac271832766140fc9000e0331

commit 3cc62d6500b11c4ac271832766140fc9000e0331
Author: Peter Wen <wnwen@chromium.org>
Date: Thu Nov 22 19:50:34 2018

Android: Parallelize Error Prone

Run two compile_java steps in parallel, one without errorprone (~20s) to
unblock subsequent build steps (desugar, bytecode rewriting, dexing),
and one with errorprone (if enabled) to check the build (~40s).

This saves approximately 19 seconds for the overall incremental build of
chrome_java.

Bug: 906803
Change-Id: I4dee29c246bbc65791088dcc5e38d1030310c466
Reviewed-on: https://chromium-review.googlesource.com/c/1346992
Commit-Queue: Peter Wen <wnwen@chromium.org>
Reviewed-by: agrieve <agrieve@chromium.org>
Cr-Commit-Position: refs/heads/master@{#610477}
[modify] https://crrev.com/3cc62d6500b11c4ac271832766140fc9000e0331/build/android/gyp/javac.py
[modify] https://crrev.com/3cc62d6500b11c4ac271832766140fc9000e0331/build/config/android/internal_rules.gni
[modify] https://crrev.com/3cc62d6500b11c4ac271832766140fc9000e0331/third_party/guava/BUILD.gn

Labels: -Pri-3 Pri-2
Hi Peter,

Starting your change WebRTC started seeing failed rolls - https://roll-dash.corp.google.com/

First failed roll - https://webrtc-review.googlesource.com/c/src/+/111842
Error example - https://logs.chromium.org/logs/webrtc/buildbucket/cr-buildbucket.appspot.com/8929128046731603776/+/steps/compile/0/stdout

FAILED: gen/rtc_base/base_java.javac.jar gen/rtc_base/base_java.javac.jar.info 
python ../../build/android/gyp/javac.py --depfile=gen/rtc_base/base_java__compile_java.d --generated-dir=gen/rtc_base/base_java/generated_java --jar-path=gen/rtc_base/base_java.javac.jar --java-srcjars=\[\] --java-version=1.8 --full-classpath=@FileArg\(gen/rtc_base/base_java.build_config:deps_info:javac_full_classpath\) --interface-classpath=@FileArg\(gen/rtc_base/base_java.build_config:deps_info:javac_full_interface_classpath\) --processorpath=@FileArg\(gen/rtc_base/base_java.build_config:javac:processor_classpath\) --processors=@FileArg\(gen/rtc_base/base_java.build_config:javac:processor_classes\) --java-srcjars=@FileArg\(gen/rtc_base/base_java.build_config:deps_info:owned_resource_srcjars\) --bootclasspath=@FileArg\(gen/rtc_base/base_java.build_config:android:sdk_interface_jars\) --chromium-code=1 @gen/rtc_base/base_java.sources --javac-arg=-Werror --javac-arg=-Xep:ParameterNotNullable:ERROR --javac-arg=-Xep:FieldMissingNullable:ERROR --javac-arg=-Xep:ReturnMissingNullable:ERROR
Traceback (most recent call last):
  File "../../build/android/gyp/javac.py", line 638, in <module>
    sys.exit(main(sys.argv[1:]))
  File "../../build/android/gyp/javac.py", line 634, in main
    add_pydeps=False)
  File "/b/s/w/ir/cache/builder/src/build/android/gyp/util/build_utils.py", line 628, in CallAndWriteDepfileIfStale
    pass_changes=True)
  File "/b/s/w/ir/cache/builder/src/build/android/gyp/util/md5_check.py", line 87, in CallAndRecordIfStale
    function(*args)
  File "/b/s/w/ir/cache/builder/src/build/android/gyp/util/build_utils.py", line 613, in on_stale_md5
    function(*args)
  File "../../build/android/gyp/javac.py", line 626, in <lambda>
    classpath_inputs, classpath),
  File "../../build/android/gyp/javac.py", line 375, in _OnStaleMd5
    attempt_build()
  File "../../build/android/gyp/javac.py", line 373, in <lambda>
    stderr_filter=ProcessJavacOutput)
  File "/b/s/w/ir/cache/builder/src/build/android/gyp/util/build_utils.py", line 218, in CheckOutput
    raise CalledProcessError(cwd, args, stdout + stderr)
util.build_utils.CalledProcessError: Command failed: ( cd /b/s/w/ir/cache/builder/src/out/android_arm64_rel; /usr/bin/javac -g -encoding UTF-8 -sourcepath : -source 1.8 -target 1.8 -Xlint:unchecked -Werror -bootclasspath lib.java/third_party/android_tools/android.interface.jar:/usr/lib/jvm/java-8-openjdk-amd64/jre/lib/rt.jar -Werror -Xep:ParameterNotNullable:ERROR -Xep:FieldMissingNullable:ERROR -Xep:ReturnMissingNullable:ERROR -d /b/s/w/ir/tmp/t/tmp5XS4KN/classes -classpath lib.java/third_party/bazel/desugar/Desugar-runtime.interface.jar:lib.java/build/android/buildhooks/build_hooks_java.interface.jar:lib.java/third_party/jsr-305/jsr_305_javalib.interface.jar @/b/s/w/ir/tmp/t/tmp5XS4KN/files_list.txt )
javac: invalid flag: -Xep:ParameterNotNullable:ERROR
Usage: javac <options> <source files>
use -help for a list of possible options

Thing is, WebRTC passes in some -Xep parameters explicitly - https://webrtc.googlesource.com/src/+/master/webrtc.gni#822
which as of this change might be not desirable. 

Could you please advice us on proper fix for that?
Cc: mbonadei@chromium.org
wnwen's out today, but I've put together a change that should hopefully address this:
https://chromium-review.googlesource.com/c/chromium/src/+/1349672
Thanks for creating this CL! If I understand correctly, we need to switch to "errorprone_args" in WebRTC after your CL lands and everything should work again.
Yep! That's the idea :)
Project Member

Comment 10 by bugdroid1@chromium.org, Nov 23

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/7c1d9ee76610d8a00a96c23d33cd472180da85ee

commit 7c1d9ee76610d8a00a96c23d33cd472180da85ee
Author: Andrew Grieve <agrieve@chromium.org>
Date: Fri Nov 23 16:09:07 2018

Android: GN: Allow errorprone_args to be different than javac_args

Bug: 906803
Change-Id: I5a9c315008a6908e2bb3aef7ac9726e20b6c1cfc
Reviewed-on: https://chromium-review.googlesource.com/c/1349672
Reviewed-by: Eric Stevenson <estevenson@chromium.org>
Commit-Queue: agrieve <agrieve@chromium.org>
Cr-Commit-Position: refs/heads/master@{#610625}
[modify] https://crrev.com/7c1d9ee76610d8a00a96c23d33cd472180da85ee/build/config/android/internal_rules.gni
[modify] https://crrev.com/7c1d9ee76610d8a00a96c23d33cd472180da85ee/build/config/android/rules.gni

Project Member

Comment 11 by bugdroid1@chromium.org, Nov 23

The following revision refers to this bug:
  https://webrtc.googlesource.com/src.git/+/05aee741f696a96c6f7b931d9a84e92aa51ecbde

commit 05aee741f696a96c6f7b931d9a84e92aa51ecbde
Author: Oleh Prypin <oprypin@webrtc.org>
Date: Fri Nov 23 17:47:35 2018

Roll chromium_revision f9be7d3d66..d298cced6c (610432:610627)

Also fix Android build by switching to the new `errorprone_args` parameter introduced in https://chromium-review.googlesource.com/1349672

Change log: https://chromium.googlesource.com/chromium/src/+log/f9be7d3d66..d298cced6c
Full diff: https://chromium.googlesource.com/chromium/src/+/f9be7d3d66..d298cced6c

Changed dependencies
* src/base: https://chromium.googlesource.com/chromium/src/base/+log/c501123f4c..637e844c7c
* src/build: https://chromium.googlesource.com/chromium/src/build/+log/a608842209..d6391e35ea
* src/ios: https://chromium.googlesource.com/chromium/src/ios/+log/7ec4d4bb81..37ce0c91d6
* src/testing: https://chromium.googlesource.com/chromium/src/testing/+log/64a90737d6..e78a57eb5b
* src/third_party: https://chromium.googlesource.com/chromium/src/third_party/+log/9e781ebbaf..6c250624d7
* src/third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/4176781039..43e8ebcaf2
* src/tools: https://chromium.googlesource.com/chromium/src/tools/+log/3c063fd823..6b41cb2c41
DEPS diff: https://chromium.googlesource.com/chromium/src/+/f9be7d3d66..d298cced6c/DEPS

No update to Clang.

Bug: chromium:906803
Change-Id: I45b0cf87d9aefdb4b43a6335deb389ad3e8ab9d4
Reviewed-on: https://webrtc-review.googlesource.com/c/111926
Reviewed-by: Oleksandr Iakovenko <iakovenko@webrtc.org>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Oleh Prypin <oprypin@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#25776}
[modify] https://crrev.com/05aee741f696a96c6f7b931d9a84e92aa51ecbde/DEPS
[modify] https://crrev.com/05aee741f696a96c6f7b931d9a84e92aa51ecbde/webrtc.gni

Project Member

Comment 12 by bugdroid1@chromium.org, Nov 25

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/9b554f6af88760872fd7785eda47bc5c4d62e8ae

commit 9b554f6af88760872fd7785eda47bc5c4d62e8ae
Author: chromium-autoroll <chromium-autoroll@skia-public.iam.gserviceaccount.com>
Date: Sun Nov 25 16:07:22 2018

Roll src/third_party/webrtc b357e54dd5b2..f1c194decd51 (10 commits)

https://webrtc.googlesource.com/src.git/+log/b357e54dd5b2..f1c194decd51


git log b357e54dd5b2..f1c194decd51 --date=short --no-merges --format='%ad %ae %s'
2018-11-25 chromium-webrtc-autoroll@webrtc-ci.iam.gserviceaccount.com Roll chromium_revision d298cced6c..7579fcbc1c (610627:610728)
2018-11-23 oprypin@webrtc.org Roll chromium_revision f9be7d3d66..d298cced6c (610432:610627)
2018-11-23 aleloi@webrtc.org Revert "Replace the IceConnectionState implementation."
2018-11-23 sprang@webrtc.org Remove use of CodecSpecificInfo.codec_name
2018-11-23 jonasolsson@webrtc.org Replace the IceConnectionState implementation.
2018-11-23 srte@webrtc.org Adds stable bandwidth estimate to GoogCC.
2018-11-23 ssilkin@webrtc.org Don't buffer encoded frames.
2018-11-23 srte@webrtc.org Moves ProbeBitrateEstimator from DelayBasedBwe.
2018-11-23 mbonadei@webrtc.org Decouple //rtc_base:rtc_base_tests_utils from gunit.
2018-11-23 kuddai@google.com Expose jitter buffer flushes metric in new getStats api.


Created with:
  gclient setdep -r src/third_party/webrtc@f1c194decd51

The AutoRoll server is located here: https://autoroll.skia.org/r/webrtc-chromium-autoroll

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md

If the roll is causing failures, please contact the current sheriff, who should
be CC'd on the roll, and stop the roller if necessary.

CQ_INCLUDE_TRYBOTS=luci.chromium.try:linux_chromium_archive_rel_ng;luci.chromium.try:mac_chromium_archive_rel_ng

BUG=chromium:None,chromium:906803,chromium:None,chromium:907113
TBR=webrtc-chromium-sheriffs-robots@google.com

Change-Id: Idf6801287f38d7f2ac2d87e8d3b387e98918b8a1
Reviewed-on: https://chromium-review.googlesource.com/c/1350353
Reviewed-by: chromium-autoroll <chromium-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: chromium-autoroll <chromium-autoroll@skia-public.iam.gserviceaccount.com>
Cr-Commit-Position: refs/heads/master@{#610733}
[modify] https://crrev.com/9b554f6af88760872fd7785eda47bc5c4d62e8ae/DEPS

Thanks for letting us know of the breakage, Mirko! Thanks for fixing it so quickly, Andrew!

Any ideas on how to prevent this in the future? Are there plans for WebRTC tests to be added to the CQ or another builder?
If I had known that this breaks WebRTC then I would have at least added a workaround in the original CL.
Cc: yvesg@google.com
Thanks wnwen@, I added yves@ who will probably work on that in the future.
Project Member

Comment 17 by bugdroid1@chromium.org, Nov 28

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/e0c3561274712df1bc7d2c99335dc90f608c23c0

commit e0c3561274712df1bc7d2c99335dc90f608c23c0
Author: Peter Wen <wnwen@chromium.org>
Date: Wed Nov 28 15:39:45 2018

Android: Parallelize bytecode rewriting

Parallelize processing of each entry in the zip (jar) file. This also
preserves build determinism since we wait on each future in sequence.

Estimated total savings on an incremental build: 1.6 seconds.

Bug: 906803
Change-Id: Iec0cfcc4511bf090a6f50a3d64eea3f8b3459778
Reviewed-on: https://chromium-review.googlesource.com/c/1351458
Commit-Queue: Peter Wen <wnwen@chromium.org>
Reviewed-by: Eric Stevenson <estevenson@chromium.org>
Cr-Commit-Position: refs/heads/master@{#611702}
[modify] https://crrev.com/e0c3561274712df1bc7d2c99335dc90f608c23c0/build/android/bytecode/java/org/chromium/bytecode/ByteCodeProcessor.java

Project Member

Comment 18 by bugdroid1@chromium.org, Dec 3

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/d0df151404f2c6d421121690b073b088d8ab1464

commit d0df151404f2c6d421121690b073b088d8ab1464
Author: Peter Wen <wnwen@chromium.org>
Date: Mon Dec 03 20:38:31 2018

Android: Parallelize javac post-processing

We do a number of tasks in javac.py after the javac command completes:
- Move annotation processor generated files to out/Default/gen.
  - Scan all java files (including aforesaid generated ones) to
    construct .apk.jar.info files.
- Pack all .class (and other files?) into a .jar file for future build
  steps.

This CL splits out these tasks and does them in parallel, in particular
also processing java files in parallel.

Estimated incremental build savings: ~1.2s

Bug: 906803
Change-Id: Ic7a4d4e4cee998ea15f90a1c435de34e60780a3a
Reviewed-on: https://chromium-review.googlesource.com/c/1352806
Commit-Queue: Peter Wen <wnwen@chromium.org>
Reviewed-by: agrieve <agrieve@chromium.org>
Cr-Commit-Position: refs/heads/master@{#613227}
[modify] https://crrev.com/d0df151404f2c6d421121690b073b088d8ab1464/build/android/gyp/jar.py
[modify] https://crrev.com/d0df151404f2c6d421121690b073b088d8ab1464/build/android/gyp/javac.py

Project Member

Comment 19 by bugdroid1@chromium.org, Dec 10

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/54ab13b87d886318f8b443c5d675375587e2ab12

commit 54ab13b87d886318f8b443c5d675375587e2ab12
Author: Peter Wen <wnwen@chromium.org>
Date: Mon Dec 10 20:35:37 2018

Android: Use d8's desugaring for debug

Rather than using desugar.jar, simply fold desugaring into the dexing
step. This works for debug and we may try it with release builds later,
but since release builds take much longer anyways, it's not as urgent.

Estimated savings: ~3.9s

Change-Id: I34b968ff1080c5238e41fe88864de9f2c7452da3
Bug: 906803
Reviewed-on: https://chromium-review.googlesource.com/c/1362101
Commit-Queue: Peter Wen <wnwen@chromium.org>
Reviewed-by: agrieve <agrieve@chromium.org>
Cr-Commit-Position: refs/heads/master@{#615234}
[modify] https://crrev.com/54ab13b87d886318f8b443c5d675375587e2ab12/build/android/gyp/dex.py
[modify] https://crrev.com/54ab13b87d886318f8b443c5d675375587e2ab12/build/config/android/internal_rules.gni

Project Member

Comment 20 by bugdroid1@chromium.org, Dec 11

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/a30eb958a93f6f19086b40c008316c6be1bcddfa

commit a30eb958a93f6f19086b40c008316c6be1bcddfa
Author: agrieve <agrieve@chromium.org>
Date: Tue Dec 11 01:33:16 2018

Revert "Android: Use d8's desugaring for debug"

This reverts commit 54ab13b87d886318f8b443c5d675375587e2ab12.

Reason for revert: Broke cronet_smoketests_platform_only_instrumentation_apk (see bug)

Original change's description:
> Android: Use d8's desugaring for debug
> 
> Rather than using desugar.jar, simply fold desugaring into the dexing
> step. This works for debug and we may try it with release builds later,
> but since release builds take much longer anyways, it's not as urgent.
> 
> Estimated savings: ~3.9s
> 
> Change-Id: I34b968ff1080c5238e41fe88864de9f2c7452da3
> Bug: 906803
> Reviewed-on: https://chromium-review.googlesource.com/c/1362101
> Commit-Queue: Peter Wen <wnwen@chromium.org>
> Reviewed-by: agrieve <agrieve@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#615234}

TBR=wnwen@chromium.org,agrieve@chromium.org

Change-Id: Ib1a1f7efb89b6f766b9d0589d12d3cf38a02f7ad
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: 906803, 913679
Reviewed-on: https://chromium-review.googlesource.com/c/1371191
Reviewed-by: agrieve <agrieve@chromium.org>
Commit-Queue: agrieve <agrieve@chromium.org>
Cr-Commit-Position: refs/heads/master@{#615367}
[modify] https://crrev.com/a30eb958a93f6f19086b40c008316c6be1bcddfa/build/android/gyp/dex.py
[modify] https://crrev.com/a30eb958a93f6f19086b40c008316c6be1bcddfa/build/config/android/internal_rules.gni

Blocking: 908988
Folding desugar blocked on migration to r8
Blockedon: 908988
Blocking: -908988
Labels: DevX
Project Member

Comment 25 by bugdroid1@chromium.org, Jan 2

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/8a5a16af058dc617f161906a9d1698d85b8ddcb3

commit 8a5a16af058dc617f161906a9d1698d85b8ddcb3
Author: Peter Wen <wnwen@chromium.org>
Date: Wed Jan 02 18:23:37 2019

Android: Replace desugar with d8 and r8 for debug

For release builds, desugar.jar still runs first, before d8 or r8, so
nothing is changing for them as by the time d8 or r8 runs, the code has
already been desugared.

When r8 is enabled, it can desugar all targets that enable proguard, and
d8 can desugar all targets that do not enable proguard.

This can only be turned on once r8 replaces proguard since proguard does
not understand java 8 code that has not been desugared already.

Bug: 906803, 913679, 916733
Change-Id: I3fcc5a20b38e7fdc78cdeed1533583675d58346b
Reviewed-on: https://chromium-review.googlesource.com/c/1384945
Reviewed-by: Sam Maier <smaier@chromium.org>
Commit-Queue: Peter Wen <wnwen@chromium.org>
Cr-Commit-Position: refs/heads/master@{#619434}
[modify] https://crrev.com/8a5a16af058dc617f161906a9d1698d85b8ddcb3/build/android/gyp/dex.py
[modify] https://crrev.com/8a5a16af058dc617f161906a9d1698d85b8ddcb3/build/android/gyp/proguard.py
[modify] https://crrev.com/8a5a16af058dc617f161906a9d1698d85b8ddcb3/build/config/android/internal_rules.gni

Project Member

Comment 26 by bugdroid1@chromium.org, Jan 2

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/1b8dd7181bd85722196bdf056a17f5e90f9ad7d5

commit 1b8dd7181bd85722196bdf056a17f5e90f9ad7d5
Author: Thomas Anderson <thomasanderson@chromium.org>
Date: Wed Jan 02 19:07:28 2019

Revert "Android: Replace desugar with d8 and r8 for debug"

This reverts commit 8a5a16af058dc617f161906a9d1698d85b8ddcb3.

Reason for revert: Suspected cause of breakage on android-rel:
https://ci.chromium.org/p/chromium/builders/luci.chromium.ci/android-rel/6359

Original change's description:
> Android: Replace desugar with d8 and r8 for debug
> 
> For release builds, desugar.jar still runs first, before d8 or r8, so
> nothing is changing for them as by the time d8 or r8 runs, the code has
> already been desugared.
> 
> When r8 is enabled, it can desugar all targets that enable proguard, and
> d8 can desugar all targets that do not enable proguard.
> 
> This can only be turned on once r8 replaces proguard since proguard does
> not understand java 8 code that has not been desugared already.
> 
> Bug: 906803, 913679, 916733
> Change-Id: I3fcc5a20b38e7fdc78cdeed1533583675d58346b
> Reviewed-on: https://chromium-review.googlesource.com/c/1384945
> Reviewed-by: Sam Maier <smaier@chromium.org>
> Commit-Queue: Peter Wen <wnwen@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#619434}

TBR=wnwen@chromium.org,smaier@chromium.org

Change-Id: I5591321bd6369f4fb9de3f1519b2c823775c048b
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: 906803, 913679, 916733
Reviewed-on: https://chromium-review.googlesource.com/c/1393425
Reviewed-by: Thomas Anderson <thomasanderson@chromium.org>
Commit-Queue: Thomas Anderson <thomasanderson@chromium.org>
Cr-Commit-Position: refs/heads/master@{#619447}
[modify] https://crrev.com/1b8dd7181bd85722196bdf056a17f5e90f9ad7d5/build/android/gyp/dex.py
[modify] https://crrev.com/1b8dd7181bd85722196bdf056a17f5e90f9ad7d5/build/android/gyp/proguard.py
[modify] https://crrev.com/1b8dd7181bd85722196bdf056a17f5e90f9ad7d5/build/config/android/internal_rules.gni

Project Member

Comment 27 by bugdroid1@chromium.org, Jan 2

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/856c6214bf1fbd7730a7ef609720470f2999befc

commit 856c6214bf1fbd7730a7ef609720470f2999befc
Author: Peter Wen <wnwen@chromium.org>
Date: Wed Jan 02 21:28:03 2019

Reland "Android: Replace desugar with d8 and r8 for debug"

Original CL: https://chromium-review.googlesource.com/c/chromium/src/+/1384945

Fixes:
 - Use the new r8 flags
 - Use java_runtime_classpath when javac_full_interface_classpath is not
   available.

Bug: 906803, 913679, 916733
Change-Id: Iedf88ac5b0b9a9277a97d3cbcad24ee44eb61607
Reviewed-on: https://chromium-review.googlesource.com/c/1393466
Reviewed-by: Sam Maier <smaier@chromium.org>
Commit-Queue: Peter Wen <wnwen@chromium.org>
Cr-Commit-Position: refs/heads/master@{#619498}
[modify] https://crrev.com/856c6214bf1fbd7730a7ef609720470f2999befc/build/android/gyp/dex.py
[modify] https://crrev.com/856c6214bf1fbd7730a7ef609720470f2999befc/build/android/gyp/proguard.py
[modify] https://crrev.com/856c6214bf1fbd7730a7ef609720470f2999befc/build/config/android/internal_rules.gni

Blocking: 921686
Status: Fixed (was: Started)
go/fast-incremental-build is mostly complete, this focused on incremental builds for non-incremental apks.

issue 921686 will be specifically targeting edit-build-install cycles for incremental builds on incremental apks.
Project Member

Comment 29 by bugdroid1@chromium.org, Jan 16

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/28543d8fe6777cfa45a11cf7e028a4b86f89b9f0

commit 28543d8fe6777cfa45a11cf7e028a4b86f89b9f0
Author: Andrew Grieve <agrieve@chromium.org>
Date: Wed Jan 16 00:36:53 2019

Revert "Android: Parallelize Error Prone"

This reverts commit 3cc62d6500b11c4ac271832766140fc9000e0331.

Reason for revert: Our bots don't have a consistent javac version

Original change's description:
> Android: Parallelize Error Prone
>
> Run two compile_java steps in parallel, one without errorprone (~20s) to
> unblock subsequent build steps (desugar, bytecode rewriting, dexing),
> and one with errorprone (if enabled) to check the build (~40s).
>
> This saves approximately 19 seconds for the overall incremental build of
> chrome_java.
>
> Bug: 906803
> Change-Id: I4dee29c246bbc65791088dcc5e38d1030310c466
> Reviewed-on: https://chromium-review.googlesource.com/c/1346992
> Commit-Queue: Peter Wen <wnwen@chromium.org>
> Reviewed-by: agrieve <agrieve@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#610477}

Bug: 906803, 693079,  921422 
Change-Id: I3a09313563dd702c6fff4f351602d6f80bbf883e
Reviewed-on: https://chromium-review.googlesource.com/c/1412273
Reviewed-by: Eric Stevenson <estevenson@chromium.org>
Commit-Queue: agrieve <agrieve@chromium.org>
Cr-Commit-Position: refs/heads/master@{#622934}
[modify] https://crrev.com/28543d8fe6777cfa45a11cf7e028a4b86f89b9f0/build/android/gyp/javac.py
[modify] https://crrev.com/28543d8fe6777cfa45a11cf7e028a4b86f89b9f0/build/config/android/internal_rules.gni

Project Member

Comment 30 by bugdroid1@chromium.org, Jan 16 (6 days ago)

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/0807a3f79fd0572ad73f127111d7626262c1e655

commit 0807a3f79fd0572ad73f127111d7626262c1e655
Author: Tibor Goldschwendt <tiborg@chromium.org>
Date: Wed Jan 16 23:30:00 2019

Revert "Reland "Android: Replace desugar with d8 and r8 for debug""

This reverts commit 856c6214bf1fbd7730a7ef609720470f2999befc.

Reason for revert: breaks modularization (crbug/922638)

Original change's description:
> Reland "Android: Replace desugar with d8 and r8 for debug"
> 
> Original CL: https://chromium-review.googlesource.com/c/chromium/src/+/1384945
> 
> Fixes:
>  - Use the new r8 flags
>  - Use java_runtime_classpath when javac_full_interface_classpath is not
>    available.
> 
> Bug: 906803, 913679, 916733
> Change-Id: Iedf88ac5b0b9a9277a97d3cbcad24ee44eb61607
> Reviewed-on: https://chromium-review.googlesource.com/c/1393466
> Reviewed-by: Sam Maier <smaier@chromium.org>
> Commit-Queue: Peter Wen <wnwen@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#619498}

TBR=wnwen@chromium.org,smaier@chromium.org

# Not skipping CQ checks because original CL landed > 1 day ago.

Bug: 906803, 913679, 916733,  922638 
Change-Id: I28bdeec6c482cdd7a663a69cb6475f2fa25bd1f8
Reviewed-on: https://chromium-review.googlesource.com/c/1415793
Reviewed-by: Tibor Goldschwendt <tiborg@chromium.org>
Reviewed-by: Peter Wen <wnwen@chromium.org>
Commit-Queue: Tibor Goldschwendt <tiborg@chromium.org>
Cr-Commit-Position: refs/heads/master@{#623446}
[modify] https://crrev.com/0807a3f79fd0572ad73f127111d7626262c1e655/build/android/gyp/dex.py
[modify] https://crrev.com/0807a3f79fd0572ad73f127111d7626262c1e655/build/android/gyp/proguard.py
[modify] https://crrev.com/0807a3f79fd0572ad73f127111d7626262c1e655/build/config/android/internal_rules.gni

Project Member

Comment 31 by bugdroid1@chromium.org, Jan 17 (6 days ago)

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/fd9e2835636c89c2e177fbbf640f464b59e1f27b

commit fd9e2835636c89c2e177fbbf640f464b59e1f27b
Author: Peter Wen <wnwen@chromium.org>
Date: Thu Jan 17 04:17:11 2019

Reland "Android: Parallelize Error Prone"

Original CL: https://crrev.com/c/1346992

This is a simple reland as the revert was speculative and did not remove
perf bot issues.

Bug: 906803, 693079,  921422 
Change-Id: Iaddeaf90a40c261775885a1ef37d4320a2e39cd4
Reviewed-on: https://chromium-review.googlesource.com/c/1414875
Commit-Queue: agrieve <agrieve@chromium.org>
Reviewed-by: agrieve <agrieve@chromium.org>
Cr-Commit-Position: refs/heads/master@{#623572}
[modify] https://crrev.com/fd9e2835636c89c2e177fbbf640f464b59e1f27b/build/android/gyp/javac.py
[modify] https://crrev.com/fd9e2835636c89c2e177fbbf640f464b59e1f27b/build/config/android/internal_rules.gni

Project Member

Comment 32 by bugdroid1@chromium.org, Jan 18 (4 days ago)

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/2dc440a153bdad284455645c3a5a8dc9d08e6c32

commit 2dc440a153bdad284455645c3a5a8dc9d08e6c32
Author: Peter Wen <wnwen@chromium.org>
Date: Fri Jan 18 22:02:31 2019

Reland "Android: Replace desugar with d8 and r8 for debug"

Previous reland: https://crrev.com/c/1393466

Bug: 906803,  922638 
Change-Id: I8aa0382aaa822ad37b299a9737411130e0c75b63
Reviewed-on: https://chromium-review.googlesource.com/c/1415699
Reviewed-by: Sam Maier <smaier@chromium.org>
Commit-Queue: Sam Maier <smaier@chromium.org>
Cr-Commit-Position: refs/heads/master@{#624309}
[modify] https://crrev.com/2dc440a153bdad284455645c3a5a8dc9d08e6c32/build/android/gyp/dex.py
[modify] https://crrev.com/2dc440a153bdad284455645c3a5a8dc9d08e6c32/build/android/gyp/proguard.py
[modify] https://crrev.com/2dc440a153bdad284455645c3a5a8dc9d08e6c32/build/config/android/internal_rules.gni

Comment 33 by agrieve@google.com, Today (11 hours ago)

Blockedon: 924234 924233
Status: Started (was: Fixed)
Project Member

Comment 34 by bugdroid1@chromium.org, Today (11 hours ago)

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/a4627f23e2ecc8a7eeb1aeab4294404a0b17f144

commit a4627f23e2ecc8a7eeb1aeab4294404a0b17f144
Author: agrieve <agrieve@chromium.org>
Date: Tue Jan 22 20:20:26 2019

Revert "Reland "Android: Replace desugar with d8 and r8 for debug""

This reverts commit 2dc440a153bdad284455645c3a5a8dc9d08e6c32.

Reason for revert: Broke downstream test (see bug)

Original change's description:
> Reland "Android: Replace desugar with d8 and r8 for debug"
> 
> Previous reland: https://crrev.com/c/1393466
> 
> Bug: 906803,  922638 
> Change-Id: I8aa0382aaa822ad37b299a9737411130e0c75b63
> Reviewed-on: https://chromium-review.googlesource.com/c/1415699
> Reviewed-by: Sam Maier <smaier@chromium.org>
> Commit-Queue: Sam Maier <smaier@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#624309}

TBR=wnwen@chromium.org,smaier@chromium.org

# Not skipping CQ checks because original CL landed > 1 day ago.

Bug: 906803,  922638 , 923862
Change-Id: Ib2003e0e9da279ac586d039e50bb779a0365fb0c
Reviewed-on: https://chromium-review.googlesource.com/c/1427222
Reviewed-by: agrieve <agrieve@chromium.org>
Commit-Queue: agrieve <agrieve@chromium.org>
Cr-Commit-Position: refs/heads/master@{#624898}
[modify] https://crrev.com/a4627f23e2ecc8a7eeb1aeab4294404a0b17f144/build/android/gyp/dex.py
[modify] https://crrev.com/a4627f23e2ecc8a7eeb1aeab4294404a0b17f144/build/android/gyp/proguard.py
[modify] https://crrev.com/a4627f23e2ecc8a7eeb1aeab4294404a0b17f144/build/config/android/internal_rules.gni

Comment 35 by agrieve@google.com, Today (11 hours ago)

Reverted change due to downstream test breakage (see bug 923862).

While the tests were for the "enormous" tests, I suspect it may just be the only bot that runs any of chrome_test_apk with is_debug=true

Sign in to add a comment