Restoring (from "Recently closed") a window with large number of tabs hurts OS/machine
Reported by
mko...@yandex-team.ru,
Mar 1 2017
|
||||
Issue descriptionUserAgent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_3) AppleWebKit/602.4.8 (KHTML, like Gecko) Version/10.0.3 Safari/602.4.8 Steps to reproduce the problem: 1. Take a computer with small amount of free memory; 2. Open a new window, add tens of tabs. Make sure the computer has started to use swap (is slowing down); 3. Close the window. Wait for freeing memory; 4. Restore the window from "Recently closed" menu or by pressing Cmd-Shift-T (Ctrl-Shift-T on Win/Linux). What is the expected behavior? The closed window is restoring. Tabs are being loaded gradually, one by one. What went wrong? The closed window is restoring. All tabs are being loaded immediately, concurrently, at the same moment - That hurts OS/computer. It slows down (or even freezes for some time) momentally, unexpectedly. Did this work before? No Chrome version: Channel: n/a OS Version: OS X 10.12.3 Flash Version: I use "Continue where you left" option from the Settings. And when I start/restart Chrome all restored tabs are being loaded gradually. That's great. But restoring recently closed tabs doesn't imply the same behaviour. It looks weird... as an incompleteness. I have a patch. (will add a CL soon).
,
Mar 1 2017
,
Mar 5 2017
,
Mar 6 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/80aa799df5f54fadb8ee1343ee7cdca79e3490eb commit 80aa799df5f54fadb8ee1343ee7cdca79e3490eb Author: mkolom <mkolom@yandex-team.ru> Date: Mon Mar 06 19:38:26 2017 Use TabLoader in TabRestoreService. SessionService uses TabLoader to load tabs gradually. The same behaviour is expected from TabRestoreService. BUG=697510 Review-Url: https://codereview.chromium.org/2727663004 Cr-Commit-Position: refs/heads/master@{#454919} [modify] https://crrev.com/80aa799df5f54fadb8ee1343ee7cdca79e3490eb/chrome/browser/sessions/tab_loader.cc [modify] https://crrev.com/80aa799df5f54fadb8ee1343ee7cdca79e3490eb/chrome/browser/sessions/tab_loader.h [modify] https://crrev.com/80aa799df5f54fadb8ee1343ee7cdca79e3490eb/chrome/browser/sessions/tab_restore_browsertest.cc [modify] https://crrev.com/80aa799df5f54fadb8ee1343ee7cdca79e3490eb/chrome/browser/ui/android/tab_model/android_live_tab_context.cc [modify] https://crrev.com/80aa799df5f54fadb8ee1343ee7cdca79e3490eb/chrome/browser/ui/browser_live_tab_context.cc [modify] https://crrev.com/80aa799df5f54fadb8ee1343ee7cdca79e3490eb/chrome/browser/ui/browser_tabrestore_browsertest.cc [modify] https://crrev.com/80aa799df5f54fadb8ee1343ee7cdca79e3490eb/components/sessions/content/content_live_tab.cc [modify] https://crrev.com/80aa799df5f54fadb8ee1343ee7cdca79e3490eb/components/sessions/content/content_live_tab.h [modify] https://crrev.com/80aa799df5f54fadb8ee1343ee7cdca79e3490eb/components/sessions/core/live_tab.h [modify] https://crrev.com/80aa799df5f54fadb8ee1343ee7cdca79e3490eb/components/sessions/core/tab_restore_service_helper.cc [modify] https://crrev.com/80aa799df5f54fadb8ee1343ee7cdca79e3490eb/components/sessions/ios/ios_live_tab.h [modify] https://crrev.com/80aa799df5f54fadb8ee1343ee7cdca79e3490eb/components/sessions/ios/ios_live_tab.mm
,
Mar 6 2017
The CL is commited. That's all, everything should work.
,
Jan 11
This issue has been marked as started, but has no owner. Making available. |
||||
►
Sign in to add a comment |
||||
Comment 1 by mko...@yandex-team.ru
, Mar 1 2017