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

Issue 860646 link

Starred by 1 user

Issue metadata

Status: Fixed
Owner: ----
Closed: Jul 27
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: ----
Pri: 3
Type: Bug

Blocked on:
issue 856964



Sign in to add a comment

Make jumbo compile less when files are added and removed

Project Member Reported by brat...@opera.com, Jul 6

Issue description

When files are added and removed in file lists, all of jumbo's previously built chunks of files might be offset and change. This can trigger a rather big compilation from a small change.

David Barr has an algorithm to make the jumbo chunks more robust.

 
David, can't assign to you because "owner must be a project member", but I'm considering this bug assigned to you.
Thank you for creating a separate bug for this. I will continue the effort to resolve this issue.
Project Member

Comment 3 by bugdroid1@chromium.org, Jul 6

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

commit 50a3c7c7319a436e0acd9cf808823857bc343a39
Author: Oscar Johansson <oscarj@opera.com>
Date: Fri Jul 06 16:59:00 2018

Resolve namespace scope issue for "switches"

When building using Jumbo files gets merged.
This results in a conflict with the namespace switches in:
chrome/browser/extensions/bookmark_app_helper.cc
chrome/browser/extensions/extension_util.cc

This commit solves this by specifying that the global
namespace should be used, by adding the "::" prefix.

Bug:  850484 ,856964, 860646 
Change-Id: I6b7b8343bb66ea5c8a5796f77b85c882085f5d93
Reviewed-on: https://chromium-review.googlesource.com/1127661
Reviewed-by: Ken Rockot <rockot@chromium.org>
Commit-Queue: Daniel Bratell <bratell@opera.com>
Cr-Commit-Position: refs/heads/master@{#573000}
[modify] https://crrev.com/50a3c7c7319a436e0acd9cf808823857bc343a39/chrome/browser/extensions/bookmark_app_helper.cc
[modify] https://crrev.com/50a3c7c7319a436e0acd9cf808823857bc343a39/chrome/browser/extensions/extension_util.cc

Blockedon: 856964
Project Member

Comment 5 by bugdroid1@chromium.org, Jul 10

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

commit ace4e80d66cd200e5e0ed7edde83e0576e843980
Author: Daniel Bratell <bratell@opera.com>
Date: Tue Jul 10 10:08:23 2018

[jumbo] Resolve Windows conflict between Win32 API and OpenSSL headers

Windows head wincrypt.h and OpenSSL use the same constants so we can't
include wincrypt.h directly or indirectly. In
content/renderer/gpu/gpu_benhcmarking_extension.cc we include
the Windows header XpsObjectModel.h which includes msopc.h which
includes wincrypt.h which causes problems in some jumbo configuratons.

This patch makes sure to include crypt/wincrypt_shim.h first so that
the include of wincrypt in msopc.h does nothing.

Bug:  860646 
Change-Id: Ieda7096234575b8d1fda8af2a103972632e0f6d2
Reviewed-on: https://chromium-review.googlesource.com/1127786
Reviewed-by: enne <enne@chromium.org>
Commit-Queue: Daniel Bratell <bratell@opera.com>
Cr-Commit-Position: refs/heads/master@{#573672}
[modify] https://crrev.com/ace4e80d66cd200e5e0ed7edde83e0576e843980/content/renderer/gpu/gpu_benchmarking_extension.cc

Project Member

Comment 6 by bugdroid1@chromium.org, Jul 11

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

commit 73ea8f55b7cf8a6add17696c344688a98260d84c
Author: David Michael Barr <david.barr@samsung.com>
Date: Wed Jul 11 17:48:37 2018

Reland "jumbo: stable assignment of inputs to chunks"

This is a reland of 2c7a71c3fd6cc3ee5eda41467ea6d5b8ee337386

Original change's description:
> jumbo: stable assignment of inputs to chunks
>
> Adding or removing a file from a jumbo source set causes on average
> half of the chunks to have their inputs reallocated.
> Derive chunk boundaries from a combination of list position and path
> content. This is so that when a file is added or removed, only the
> boundaries with adjacent chunks typically move.
> For a balance between maximum chunk size and stability of partitions:
> * Partition uniformly into the required number of chunks.
> * Pick a "center" from each chunk by minimum hash value.
> * Pick the boundaries between centers by maximum hash value.
>
> Bug:  782863 
> Change-Id: Ie71d82b132e8145b4ed3d1141f85886a12149d5a
> Reviewed-on: https://chromium-review.googlesource.com/1102218
> Reviewed-by: Bruce Dawson <brucedawson@chromium.org>
> Reviewed-by: Dirk Pranke <dpranke@chromium.org>
> Reviewed-by: Daniel Bratell <bratell@opera.com>
> Commit-Queue: Dirk Pranke <dpranke@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#570623}

Bug:  860646 
Change-Id: I55b326beb716789896c39d58be8e793c97f7097d
Reviewed-on: https://chromium-review.googlesource.com/1121976
Reviewed-by: Dirk Pranke <dpranke@chromium.org>
Commit-Queue: Dirk Pranke <dpranke@chromium.org>
Cr-Commit-Position: refs/heads/master@{#574233}
[modify] https://crrev.com/73ea8f55b7cf8a6add17696c344688a98260d84c/build/config/jumbo.gni
[modify] https://crrev.com/73ea8f55b7cf8a6add17696c344688a98260d84c/build/config/merge_for_jumbo.py
[modify] https://crrev.com/73ea8f55b7cf8a6add17696c344688a98260d84c/docs/jumbo.md

Status: Fixed (was: Started)
The code has landed so I'm closing this as fixed.

Sign in to add a comment