LoopbackServer doesn't need to call DeleteChildren
Reported by
hur...@gmail.com,
Feb 21 2018
|
|||
Issue descriptionUserAgent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_2) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/60.0.3112.113 Whale/1.0.39.16 Safari/537.36 Steps to reproduce the problem: With relatively large bookmarks, say over 10000, bookmark deletion could take much time if LoopbackServer is used for sync. What is the expected behavior? What went wrong? When a bookmark node is removed, its children seems guaranteed to be removed. (See BookmarkChangeProcessor::OnWillRemoveBookmarks. It calls RemoveSyncNodeHierarchy and it calls RemoveAllChildNodes) So, if a bookmark folder that contains 99 bookmarks is removed, LoopbackServer::CommitEntity() and DeleteChildren() are called 100 times unnecessarily and this results in 100x100 invoking of LoopbackServer::IsChild() because DeleteChildren() traverses all entities, which could be a performance problem with heavy bookmark users. Did this work before? N/A Chrome version: 60.0.3112.113 Channel: stable OS Version: OS X 10.13.2 Flash Version: Shockwave Flash 28.0 r0
,
Feb 22 2018
,
Feb 23 2018
Looks like this could be a legitimate performance improvement, but since we haven't heard of any actual problems related to this, I think it's low priority. |
|||
►
Sign in to add a comment |
|||
Comment 1 by sindhu.chelamcherla@chromium.org
, Feb 21 2018