ScopedFeatureList Cleanup of Global FieldTrialList |
||||||
Issue descriptionIf a ScopedFeatureList is used to initialize a feature with parameters, and a global FieldTrialList exists, the ScopedFeatureList cannot clean up its field trial when it goes out of scope. This means that if two ScopedFeatureLists are created in the same test, or if tests do not destroy global state between cases (such as in iOS Earl Grey), ScopedFeatureList cannot initialize experiment parameters after the first time in that session. A hacky solution was found (make the ScopedFeatureList use a unique field trial name per call), but further investigation is needed for a cleaner solution. Possibilities are to make it possible for ScopedFeatureList to reset the state of FieldTrialList, or to ensure that FieldTrialList is destroyed with a ScopedFeatureList.
,
Dec 18 2017
The owners of base/metrics. Assigning to isherman@ for now.
,
Jan 2 2018
Gregory landed the hacky solution in [ https://chromium-review.googlesource.com/c/chromium/src/+/813102 ]. I don't think anyone has immediate plans to implement a cleaner solution.
,
Jan 3
This issue has been Available for over a year. If it's no longer important or seems unlikely to be fixed, please consider closing it out. If it is important, please re-triage the issue. Sorry for the inconvenience if the bug really should have been left as Available. For more details visit https://www.chromium.org/issue-tracking/autotriage - Your friendly Sheriffbot
,
Jan 7
Does EG2 change anything? Do we need a not-hacky solution still?
,
Jan 7
EG2 allows us to kill and relaunch the browser process, so we have the ability to isolate tests and run them with their own flags. It's expensive (~30s per launch), so we don't want to do it unless necessary, but it should be possible. Is this still a cross-platform bug, or should we mark it as iOS-only? |
||||||
►
Sign in to add a comment |
||||||
Comment 1 by pkl@chromium.org
, Dec 18 2017