In
ProcessorEntityTracker* SharedModelTypeProcessor::CreateEntity(
const std::string& storage_key,
const EntityData& data)
When creating an entity, there are 2 DCHECK to check that the entity does not already exist.
The first one checks that entities_ does not contain a similar entity, the second that storage_key_to_tag_hash_ does not contain the hash.
When calling processor->remove(), the entity is removed from entities_ in SharedModelTypeProcessor::OnCommitCompleted(
but storage_key_to_tag_hash_ is never cleaned.
This means that when doing
processor()->Put(key);
processor()->Delete(key);
processor()->Put(key);
the test on storage_key_to_tag_hash_ DCHECKS.
Comment 1 by bugdroid1@chromium.org
, Dec 6 2016