Commit e5d703e7 authored by asvitkine's avatar asvitkine Committed by Commit bot

Parametrize variations server ping period.

This allows experimenting with increasing the variations seed fetch
period.

BUG=483057

Review URL: https://codereview.chromium.org/1119893003

Cr-Commit-Position: refs/heads/master@{#329489}
parent b0722292
...@@ -4,8 +4,29 @@ ...@@ -4,8 +4,29 @@
#include "chrome/browser/metrics/variations/variations_request_scheduler.h" #include "chrome/browser/metrics/variations/variations_request_scheduler.h"
#include "base/strings/string_number_conversions.h"
#include "components/variations/variations_associated_data.h"
namespace chrome_variations { namespace chrome_variations {
namespace {
// Returns the time interval between variations seed fetches.
base::TimeDelta GetFetchPeriod() {
// The fetch interval can be overridden by a variation param.
std::string period_min_str =
variations::GetVariationParamValue("VarationsServiceControl",
"fetch_period_min");
size_t period_min;
if (base::StringToSizeT(period_min_str, &period_min))
return base::TimeDelta::FromMinutes(period_min);
// The default fetch interval is every 5 hours.
return base::TimeDelta::FromHours(5);
}
} // namespace
VariationsRequestScheduler::VariationsRequestScheduler( VariationsRequestScheduler::VariationsRequestScheduler(
const base::Closure& task) : task_(task) { const base::Closure& task) : task_(task) {
} }
...@@ -14,10 +35,8 @@ VariationsRequestScheduler::~VariationsRequestScheduler() { ...@@ -14,10 +35,8 @@ VariationsRequestScheduler::~VariationsRequestScheduler() {
} }
void VariationsRequestScheduler::Start() { void VariationsRequestScheduler::Start() {
// Time between regular seed fetches, in hours.
const int kFetchPeriodHours = 5;
task_.Run(); task_.Run();
timer_.Start(FROM_HERE, base::TimeDelta::FromHours(kFetchPeriodHours), task_); timer_.Start(FROM_HERE, GetFetchPeriod(), task_);
} }
void VariationsRequestScheduler::Reset() { void VariationsRequestScheduler::Reset() {
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment