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

Issue 681160 link

Starred by 2 users

Issue metadata

Status: Fixed
Owner:
Closed: Jan 2017
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: All
Pri: 2
Type: Bug

Blocked on:
issue 681695



Sign in to add a comment

Support variations params in Chrome child processes

Project Member Reported by asvitk...@chromium.org, Jan 13 2017

Issue description

Support variations params in Chrome child processes.

This requires finishing up the shared memory field trial work for Android (last platform where we don't yet have it) and then exposing the API.
 
Blockedon: 681695
Here's my plan:

  - Create a base/metrics/field_trial_params.[cc|h] API that mimics the params APIs in components/variations/variations_associated_data.h - basically moving those implementations and renaming them.
  - Mark the APIs in variations_associated_data.h as deprecated with a note to use the base/ versions. Make those APIs just call through to the new base ones.
  - At this point, people can now start using params from subprocesses.
  - After some time, migrate remaining callers of the variations APIs to the base ones and delete the variations ones.
Project Member

Comment 3 by bugdroid1@chromium.org, Jan 30 2017

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

commit 79ab08c0137f5485173e8de5cd28201774ce1a0f
Author: asvitkine <asvitkine@chromium.org>
Date: Mon Jan 30 23:27:05 2017

Move API for field trial params to base from variations.

Now that the underlying implementation also works in sub-processes,
this CL moves the APIs to base (naming the field trial params), so
that they can be easily accessed by all Chrome sub-processes.

Marks the existing variation params APIs as deprecated. Existing
callers can be migrates via future CLs and these can then be
removed.

Unit tests also moved to base.

BUG= 681160 

Review-Url: https://codereview.chromium.org/2667553002
Cr-Commit-Position: refs/heads/master@{#447108}

[modify] https://crrev.com/79ab08c0137f5485173e8de5cd28201774ce1a0f/base/BUILD.gn
[add] https://crrev.com/79ab08c0137f5485173e8de5cd28201774ce1a0f/base/metrics/field_trial_params.cc
[add] https://crrev.com/79ab08c0137f5485173e8de5cd28201774ce1a0f/base/metrics/field_trial_params.h
[add] https://crrev.com/79ab08c0137f5485173e8de5cd28201774ce1a0f/base/metrics/field_trial_params_unittest.cc
[modify] https://crrev.com/79ab08c0137f5485173e8de5cd28201774ce1a0f/components/variations/variations_associated_data.cc
[modify] https://crrev.com/79ab08c0137f5485173e8de5cd28201774ce1a0f/components/variations/variations_associated_data.h
[modify] https://crrev.com/79ab08c0137f5485173e8de5cd28201774ce1a0f/components/variations/variations_associated_data_unittest.cc

Status: Fixed (was: Available)
Fixed!

It should be possible to use variation params (now field trial params) from subprocesses now.

Comment 5 by amp@chromium.org, Feb 1 2017

Can this be merged to M57?

I just landed https://codereview.chromium.org/2657923002 which needs to be merged back to 57, but realized I built it on top of the API added in this change.
It should be possible to merge if we also merge the dependent change here:
https://codereview.chromium.org/2633203002

However, since you're just using the API from browser process, I suggest to just use the components/variations version of the API when you merge your CL and then you don't need to merge this change.
Cc: amp@chromium.org

Comment 8 by amp@chromium.org, Feb 1 2017

Ok, yea switching my change to the old API is probably a cleaner route than merging the API move in the change here back to 57.

I had to at least ask though. :)  Thanks!

Sign in to add a comment