Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(648)

Issue 2463223002: Store field trial parameters in shared memory (Closed)

Created:
4 years, 1 month ago by lawrencewu
Modified:
4 years ago
CC:
chromium-reviews, asvitkine+watch_chromium.org
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

Store field trial parameters in shared memory This CL writes field trial parameters into its allocated spot in shared memory. The format of the pickle should now look like: TrialName GroupName ParamKey1 ParamValue1 ParamKey2 ParamValue2 ... BUG=660041 Committed: https://crrev.com/68995897ee15b012c33a3419d7740f1561643bc2 Cr-Commit-Position: refs/heads/master@{#435615}

Patch Set 1 #

Patch Set 2 : refactor #

Patch Set 3 : refactor #

Total comments: 10

Patch Set 4 : address comments and write test #

Total comments: 8

Patch Set 5 : address comments #

Total comments: 1

Patch Set 6 : get field trial parameters working #

Patch Set 7 : add test and actually write params to pickle #

Patch Set 8 : expand comments #

Patch Set 9 : git rebase-update #

Patch Set 10 : add clear params from shared memory #

Patch Set 11 : fix tests #

Total comments: 22

Patch Set 12 : address comments #

Patch Set 13 : remove unnecessary import #

Patch Set 14 : add check in test for new_params #

Patch Set 15 : fix compilation error #

Total comments: 14

Patch Set 16 : address comments #

Total comments: 24

Patch Set 17 : address rest of comments #

Patch Set 18 : fix WriteStringPair #

Patch Set 19 : fix failing tests due to lock #

Total comments: 14

Patch Set 20 : address comments #

Patch Set 21 : address comments #

Total comments: 7

Patch Set 22 : add locks #

Total comments: 4

Patch Set 23 : git rebase-update #

Patch Set 24 : check that cache has been cleared in test #

Unified diffs Side-by-side diffs Delta from patch set Stats (+319 lines, -16 lines) Patch
M base/metrics/field_trial.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 3 chunks +15 lines, -2 lines 0 comments Download
M base/metrics/field_trial.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 4 chunks +179 lines, -11 lines 0 comments Download
M base/metrics/field_trial_param_associator.h View 1 2 3 4 5 6 7 8 9 10 11 2 chunks +16 lines, -2 lines 0 comments Download
M base/metrics/field_trial_param_associator.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 2 chunks +24 lines, -1 line 0 comments Download
M base/metrics/field_trial_unittest.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 2 chunks +79 lines, -0 lines 0 comments Download
M components/variations/variations_seed_processor.cc View 1 2 3 4 5 6 7 8 9 10 11 2 chunks +6 lines, -0 lines 0 comments Download

Messages

Total messages: 97 (64 generated)
lawrencewu
initial implementation
4 years, 1 month ago (2016-11-01 14:28:34 UTC) #3
Alexei Svitkine (slow)
https://codereview.chromium.org/2463223002/diff/40001/base/metrics/field_trial.cc File base/metrics/field_trial.cc (right): https://codereview.chromium.org/2463223002/diff/40001/base/metrics/field_trial.cc#newcode55 base/metrics/field_trial.cc:55: bool activated; Hmm, I thought I left a comment ...
4 years, 1 month ago (2016-11-01 14:57:16 UTC) #4
lawrencewu
Address comments and wrote a unit test for params. This change makes GetFieldTrialParams work on ...
4 years, 1 month ago (2016-11-01 18:29:06 UTC) #5
Alexei Svitkine (slow)
https://codereview.chromium.org/2463223002/diff/60001/base/metrics/field_trial.cc File base/metrics/field_trial.cc (right): https://codereview.chromium.org/2463223002/diff/60001/base/metrics/field_trial.cc#newcode89 base/metrics/field_trial.cc:89: return false; Can you refactor the code to re-use ...
4 years, 1 month ago (2016-11-01 19:13:27 UTC) #6
lawrencewu
Address comments. https://codereview.chromium.org/2463223002/diff/60001/base/metrics/field_trial.cc File base/metrics/field_trial.cc (right): https://codereview.chromium.org/2463223002/diff/60001/base/metrics/field_trial.cc#newcode89 base/metrics/field_trial.cc:89: return false; On 2016/11/01 19:13:27, Alexei Svitkine ...
4 years, 1 month ago (2016-11-01 19:59:58 UTC) #7
Alexei Svitkine (slow)
https://codereview.chromium.org/2463223002/diff/80001/base/metrics/field_trial.h File base/metrics/field_trial.h (right): https://codereview.chromium.org/2463223002/diff/80001/base/metrics/field_trial.h#newcode433 base/metrics/field_trial.h:433: FieldTrialParamAssociator::FieldTrialParams* params); I worry about this API being public. ...
4 years, 1 month ago (2016-11-02 14:56:46 UTC) #9
lawrencewu
On 2016/11/02 14:56:46, Alexei Svitkine (very slow) wrote: > https://codereview.chromium.org/2463223002/diff/80001/base/metrics/field_trial.h > File base/metrics/field_trial.h (right): > ...
4 years, 1 month ago (2016-11-07 16:48:43 UTC) #10
lawrencewu
Update: I think we can avoid the callback method and just rename GetParams to GetParamsFromSharedMemory ...
4 years, 1 month ago (2016-11-16 17:37:22 UTC) #25
Alexei Svitkine (slow)
https://codereview.chromium.org/2463223002/diff/200001/base/metrics/field_trial.cc File base/metrics/field_trial.cc (right): https://codereview.chromium.org/2463223002/diff/200001/base/metrics/field_trial.cc#newcode107 base/metrics/field_trial.cc:107: if (!ReadStringPair(iter, &tmp, &tmp)) You're passing iter by value ...
4 years, 1 month ago (2016-11-22 17:46:38 UTC) #34
lawrencewu
Address comments. https://codereview.chromium.org/2463223002/diff/200001/base/metrics/field_trial.cc File base/metrics/field_trial.cc (right): https://codereview.chromium.org/2463223002/diff/200001/base/metrics/field_trial.cc#newcode107 base/metrics/field_trial.cc:107: if (!ReadStringPair(iter, &tmp, &tmp)) On 2016/11/22 17:46:37, ...
4 years ago (2016-11-22 20:25:44 UTC) #36
Alexei Svitkine (slow)
+bcwhite for review too https://codereview.chromium.org/2463223002/diff/280001/base/metrics/field_trial.cc File base/metrics/field_trial.cc (right): https://codereview.chromium.org/2463223002/diff/280001/base/metrics/field_trial.cc#newcode673 base/metrics/field_trial.cc:673: void FieldTrialList::ClearParamsFromSharedMemoryForTesting() { Use the ...
4 years ago (2016-11-23 17:23:40 UTC) #45
lawrencewu
Address comments. https://codereview.chromium.org/2463223002/diff/280001/base/metrics/field_trial.cc File base/metrics/field_trial.cc (right): https://codereview.chromium.org/2463223002/diff/280001/base/metrics/field_trial.cc#newcode673 base/metrics/field_trial.cc:673: void FieldTrialList::ClearParamsFromSharedMemoryForTesting() { On 2016/11/23 17:23:39, Alexei ...
4 years ago (2016-11-23 19:07:33 UTC) #48
bcwhite
https://codereview.chromium.org/2463223002/diff/300001/base/metrics/field_trial.cc File base/metrics/field_trial.cc (right): https://codereview.chromium.org/2463223002/diff/300001/base/metrics/field_trial.cc#newcode87 base/metrics/field_trial.cc:87: StringPiece* trial_name, The name of this method is generic. ...
4 years ago (2016-11-23 21:03:52 UTC) #51
lawrencewu
Address comments. https://codereview.chromium.org/2463223002/diff/300001/base/metrics/field_trial.cc File base/metrics/field_trial.cc (right): https://codereview.chromium.org/2463223002/diff/300001/base/metrics/field_trial.cc#newcode87 base/metrics/field_trial.cc:87: StringPiece* trial_name, On 2016/11/23 21:03:52, bcwhite wrote: ...
4 years ago (2016-11-23 21:49:20 UTC) #52
Alexei Svitkine (slow)
https://codereview.chromium.org/2463223002/diff/360001/base/metrics/field_trial.cc File base/metrics/field_trial.cc (right): https://codereview.chromium.org/2463223002/diff/360001/base/metrics/field_trial.cc#newcode154 base/metrics/field_trial.cc:154: StringPiece(param.second))) Nit: {}'s https://codereview.chromium.org/2463223002/diff/360001/base/metrics/field_trial.h File base/metrics/field_trial.h (right): https://codereview.chromium.org/2463223002/diff/360001/base/metrics/field_trial.h#newcode231 base/metrics/field_trial.h:231: ...
4 years ago (2016-11-24 17:56:32 UTC) #63
bcwhite
https://codereview.chromium.org/2463223002/diff/300001/base/metrics/field_trial.cc File base/metrics/field_trial.cc (right): https://codereview.chromium.org/2463223002/diff/300001/base/metrics/field_trial.cc#newcode117 base/metrics/field_trial.cc:117: if (!iter.ReadStringPiece(&key)) On 2016/11/23 21:49:20, lawrencewu wrote: > On ...
4 years ago (2016-11-24 18:29:48 UTC) #64
lawrencewu
Address comments. https://codereview.chromium.org/2463223002/diff/300001/base/metrics/field_trial.cc File base/metrics/field_trial.cc (right): https://codereview.chromium.org/2463223002/diff/300001/base/metrics/field_trial.cc#newcode117 base/metrics/field_trial.cc:117: if (!iter.ReadStringPiece(&key)) On 2016/11/24 18:29:47, bcwhite wrote: ...
4 years ago (2016-11-24 21:50:36 UTC) #67
Alexei Svitkine (slow)
https://codereview.chromium.org/2463223002/diff/400001/base/metrics/field_trial.cc File base/metrics/field_trial.cc (right): https://codereview.chromium.org/2463223002/diff/400001/base/metrics/field_trial.cc#newcode976 base/metrics/field_trial.cc:976: if (!global_->field_trial_allocator_) field_trial_allocator_ shouldn't be used outside the lock. ...
4 years ago (2016-11-24 21:58:48 UTC) #68
lawrencewu
Add locks. https://codereview.chromium.org/2463223002/diff/400001/base/metrics/field_trial.cc File base/metrics/field_trial.cc (right): https://codereview.chromium.org/2463223002/diff/400001/base/metrics/field_trial.cc#newcode976 base/metrics/field_trial.cc:976: if (!global_->field_trial_allocator_) On 2016/11/24 21:58:48, Alexei Svitkine ...
4 years ago (2016-11-24 22:07:03 UTC) #71
Alexei Svitkine (slow)
lgtm, but please also wait for Brian's review
4 years ago (2016-11-24 22:18:07 UTC) #72
lawrencewu
bcwhite: friendly ping On 2016/11/24 22:18:07, Alexei Svitkine (slow) wrote: > lgtm, but please also ...
4 years ago (2016-11-28 20:18:54 UTC) #75
bcwhite
https://codereview.chromium.org/2463223002/diff/400001/base/metrics/field_trial.cc File base/metrics/field_trial.cc (right): https://codereview.chromium.org/2463223002/diff/400001/base/metrics/field_trial.cc#newcode1008 base/metrics/field_trial.cc:1008: // List of refs to eventually be made iterable. ...
4 years ago (2016-11-28 21:57:41 UTC) #76
lawrencewu
https://codereview.chromium.org/2463223002/diff/400001/base/metrics/field_trial.cc File base/metrics/field_trial.cc (right): https://codereview.chromium.org/2463223002/diff/400001/base/metrics/field_trial.cc#newcode1008 base/metrics/field_trial.cc:1008: // List of refs to eventually be made iterable. ...
4 years ago (2016-11-28 22:51:27 UTC) #77
lawrencewu
On 2016/11/28 22:51:27, lawrencewu wrote: > https://codereview.chromium.org/2463223002/diff/400001/base/metrics/field_trial.cc > File base/metrics/field_trial.cc (right): > > https://codereview.chromium.org/2463223002/diff/400001/base/metrics/field_trial.cc#newcode1008 > ...
4 years ago (2016-11-29 20:48:29 UTC) #78
bcwhite
https://codereview.chromium.org/2463223002/diff/400001/base/metrics/field_trial.cc File base/metrics/field_trial.cc (right): https://codereview.chromium.org/2463223002/diff/400001/base/metrics/field_trial.cc#newcode1008 base/metrics/field_trial.cc:1008: // List of refs to eventually be made iterable. ...
4 years ago (2016-11-30 15:05:33 UTC) #79
lawrencewu
https://codereview.chromium.org/2463223002/diff/420001/base/metrics/field_trial_unittest.cc File base/metrics/field_trial_unittest.cc (right): https://codereview.chromium.org/2463223002/diff/420001/base/metrics/field_trial_unittest.cc#newcode1304 base/metrics/field_trial_unittest.cc:1304: EXPECT_EQ("*Trial1/Group1/", check_string); On 2016/11/30 15:05:33, bcwhite wrote: > On ...
4 years ago (2016-11-30 15:08:12 UTC) #80
lawrencewu
Brian's comment made me notice that we weren't checking that the cache was actually cleared ...
4 years ago (2016-11-30 17:40:14 UTC) #85
Alexei Svitkine (slow)
lgtm
4 years ago (2016-11-30 18:03:50 UTC) #86
lawrencewu
On 2016/11/30 18:03:50, Alexei Svitkine (slow) wrote: > lgtm bcwhite@: ptal
4 years ago (2016-12-01 14:53:33 UTC) #89
bcwhite
lgtm
4 years ago (2016-12-01 15:26:49 UTC) #90
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2463223002/460001
4 years ago (2016-12-01 15:29:26 UTC) #92
commit-bot: I haz the power
Committed patchset #24 (id:460001)
4 years ago (2016-12-01 15:34:44 UTC) #95
commit-bot: I haz the power
4 years ago (2016-12-01 15:35:57 UTC) #97
Message was sent while issue was closed.
Patchset 24 (id:??) landed as
https://crrev.com/68995897ee15b012c33a3419d7740f1561643bc2
Cr-Commit-Position: refs/heads/master@{#435615}

Powered by Google App Engine
This is Rietveld 408576698