DCHECK'ing on bad version string when using --fake-variations-channel=dev |
||||
Issue descriptionChrome Version: 59.0.3056.0 (Developer Build) (64-bit) OS: Linux What steps will reproduce the problem? (1) Start chrome with --fake-variations-channel=dev (2) (3) What is the expected result? Chrome should start-up. What happens instead? You get a DCHECK: ...FATAL:version.cc(119)] Check failed: version.IsValid(). The function is being handed a version of ' 59.0.3053.3'. Note the leading space char. Filtering leading spaces fixes the issue.
,
Mar 30 2017
Is this with your own local build? I don't think --fake-variations-channel should have anything to do with it - since the version comes from Chrome's own knowledge of its version. If that's incorrect, I could imagine all sorts of things going wrong - such as data reported to UMA and evaluation of experiments in the field.
,
Mar 30 2017
It occurs when I add that CL option. Additionally, it's not my version (i.e. 3056 vs 3053). I suspect somewhere 'dev' is being substituted with that vesion?
,
Mar 30 2017
(Hit send to fast.) Also, when I say --fake-variations-channel=<some numeric version>, it doesn't crash.
,
Mar 30 2017
I'll see if I can repro.
,
Mar 30 2017
Do you have any other command-line flags specified? (note: --fake-variations-channel= shouldn't do much on its own - since it won't actually enable fetching the variations - unless you're using a user-data-dir that already has variations saved) And is this just a vanilla developer debug build? Does this repro with a clean user-data-dir? If not, how about with one created from a single previous run? (My local attempt to repro hit some other DCHECK in client_usage_tracker.cc which seems not related to what this is reporting.)
,
Mar 30 2017
Specifying a new user-data-dir doesn't help, but it looks like it also requires '--variations-server-url=https://clients4.google.com/chrome-variations/seed'
,
Mar 30 2017
krb: What's the stack trace of the DCHECK? Trying to repro locally but not hitting it. But I'm also not hitting the logging of "Variations.UserChannel" histogram - which may be because the code in question did an early return due to if (!current_version.IsValid()).
,
Mar 30 2017
This is with all local changes removed. [80089:80089:0330/105108.779812:FATAL:version.cc(114)] Check failed: Version::IsValidWildcardString(wildcard_string). #0 0x7f90720b65bb base::debug::StackTrace::StackTrace() #1 0x7f90720b4c4c base::debug::StackTrace::StackTrace() #2 0x7f9072122d9f logging::LogMessage::~LogMessage() #3 0x7f90723796ea base::Version::CompareToWildcardString() #4 0x7f9078461356 variations::internal::CheckStudyVersion() #5 0x7f90784619cd variations::internal::ShouldAddStudy() #6 0x7f90784622d1 variations::FilterAndValidateStudies() #7 0x7f907845a1e5 variations::VariationsSeedProcessor::CreateTrialsFromSeed() #8 0x7f9075a64b60 variations::VariationsService::CreateTrialsFromSeed() #9 0x7f9074c7b81a ChromeBrowserMainParts::SetupFieldTrials() #10 0x7f9074c7e1eb ChromeBrowserMainParts::PreCreateThreadsImpl() #11 0x7f9074c7cc65 ChromeBrowserMainParts::PreCreateThreads() #12 0x7f906b53b016 content::BrowserMainLoop::PreCreateThreads() #13 0x7f906a90adc5 _ZN4base8internal13FunctorTraitsIMN7content22IndexedDBCallbacksImpl13InternalStateEFvvEvE6InvokeIPS4_JEEEvS6_OT_DpOT0_ #14 0x7f906b548951 _ZN4base8internal12InvokeHelperILb0EiE8MakeItSoIRKMN7content15BrowserMainLoopEFivEJPS5_EEEiOT_DpOT0_ #15 0x7f906b5488f7 _ZN4base8internal7InvokerINS0_9BindStateIMN7content15BrowserMainLoopEFivEJNS0_17UnretainedWrapperIS4_EEEEEFivEE7RunImplIRKS6_RKSt5tupleIJS8_EEJLm0EEEEiOT_OT0_NS_13IndexSequenceIJXspT1_EEEE #16 0x7f906b54883c _ZN4base8internal7InvokerINS0_9BindStateIMN7content15BrowserMainLoopEFivEJNS0_17UnretainedWrapperIS4_EEEEEFivEE3RunEPNS0_13BindStateBaseE #17 0x7f906a7ea12d _ZNKR4base8CallbackIFvvELNS_8internal8CopyModeE1ELNS2_10RepeatModeE1EE3RunEv #18 0x7f906c11976b content::StartupTaskRunner::RunAllTasksNow() #19 0x7f906b53b740 content::BrowserMainLoop::CreateStartupTasks() #20 0x7f906b54c387 content::BrowserMainRunnerImpl::Initialize() #21 0x7f906b53796f content::BrowserMain() #22 0x7f906cdcb7c6 content::RunNamedProcessTypeMain() #23 0x7f906cdcd99c content::ContentMainRunnerImpl::Run() #24 0x7f906cdcab1a content::ContentServiceManagerMainDelegate::Run() #25 0x7f905ce9ca98 service_manager::Main() #26 0x7f906cdcb1ef content::ContentMain() #27 0x7f907323288a ChromeMain #28 0x7f90732327b2 main #29 0x7f905dfaaf45 __libc_start_main #30 0x7f90732326b5 <unknown>
,
Mar 30 2017
Thanks. Was able to repro now as well, will investigate.
,
Mar 30 2017
The space in the version was tracked down. Will update once fixed.
,
Mar 30 2017
Also working on server-side validation to catch this in the future.
,
Mar 30 2017
|
||||
►
Sign in to add a comment |
||||
Comment 1 by jdonnelly@chromium.org
, Mar 30 2017Components: Internals>Metrics