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

Issue 766760 link

Starred by 1 user

Issue metadata

Status: Duplicate
Merged: issue 765759
Owner:
Closed: Sep 2017
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Linux , Windows
Pri: 1
Type: Bug



Sign in to add a comment

Asserting syncing template URLs

Project Member Reported by brettw@chromium.org, Sep 19 2017

Issue description

I'm hitting an assertion:
  DCHECK(GetTemplateURLForGUID(local_turl->sync_guid()));
in TemplateURLService::IsLocalTemplateURLBetter.

I can repro on Windows and Linux in debug builds when starting with a clean profile and signing in with my corp account. After a minute it will crash with this call stack:

	chrome.dll!TemplateURLService::IsLocalTemplateURLBetter(const TemplateURL * local_turl, const TemplateURL * sync_turl, bool prefer_local_default) Line 2150	C++
 	chrome.dll!TemplateURLService::MergeInSyncTemplateURL(...) Line 2267	C++
 	chrome.dll!TemplateURLService::MergeDataAndStartSyncing(...) Line 1094	C++
 	chrome.dll!syncer::SharedChangeProcessor::StartAssociation(...) Line 122	C++
 	... invoke stuff ...

I wonder if maybe the template URLs haven't been added locally yet at the point of this call?

Assigning to pkasting who had some involvement in one of the patches on the blame ( issue 672364 ). It appears to be by jeffschiller who's not on the team.
 
Components: UI>Browser>Search Services>Sync
Labels: -Pri-2 Pri-1
Owner: pnoland@chromium.org
I believe this may have been triggered by https://codereview.chromium.org/2067723002 .  It looks from the call stack above like the problem is happening when there's a conflicting local prepopulated URL.  The CL above added the code that handles this case.

I'm somewhat surprised we apparently have local prepopulated URLs without a sync GUID, as I thought all TemplateURLs were supposed to have a sync GUID.  I don't know if somehow loading hasn't completed (though I thought it should have, if we're mergeing sync data); or some prepopulated URLs can legitimately not have sync GUIDs (in which case the DCHECK here is probably wrong, but maybe also unnecessary); or somehow these should have gotten GUIDs but didn't (so we need to fix that).

Hoping pnoland can look more deeply as I'm about to go on leave.

Comment 2 by s...@chromium.org, Sep 19 2017

Mergedinto: 765759
Status: Duplicate (was: Assigned)
Deduping into existing bug.

Sign in to add a comment