Design doc: http://go/better-tps
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/6361f63e12712a9b4e40f5b0b1aab31a0bae9bb4 commit 6361f63e12712a9b4e40f5b0b1aab31a0bae9bb4 Author: wnwen <wnwen@chromium.org> Date: Wed May 18 13:28:46 2016 Clean up unnecessary parameters. - Rename methods to be more accurate to what is intended. - Fetch the old file store folder only when necessary, after we know that a migration is in order. BUG= 612574 Review-Url: https://codereview.chromium.org/1991443002 Cr-Commit-Position: refs/heads/master@{#394402} [modify] https://crrev.com/6361f63e12712a9b4e40f5b0b1aab31a0bae9bb4/chrome/android/java/src/org/chromium/chrome/browser/incognito/IncognitoNotificationService.java [modify] https://crrev.com/6361f63e12712a9b4e40f5b0b1aab31a0bae9bb4/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/DocumentModeAssassin.java [modify] https://crrev.com/6361f63e12712a9b4e40f5b0b1aab31a0bae9bb4/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/TabModelSelectorImpl.java [modify] https://crrev.com/6361f63e12712a9b4e40f5b0b1aab31a0bae9bb4/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/TabPersistentStore.java [modify] https://crrev.com/6361f63e12712a9b4e40f5b0b1aab31a0bae9bb4/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/document/StorageDelegate.java [modify] https://crrev.com/6361f63e12712a9b4e40f5b0b1aab31a0bae9bb4/chrome/android/javatests/src/org/chromium/chrome/browser/tabmodel/RestoreMigrateTest.java
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/bda78ff1475ff7e24fa57ed2e25924ee49af0d7b commit bda78ff1475ff7e24fa57ed2e25924ee49af0d7b Author: wnwen <wnwen@chromium.org> Date: Fri May 27 01:18:45 2016 Pre-warm the tab list file. - Store a SharedPreference boolean to prevent repeatedly checking whether the same user needs to be migrated from the old tab state file storage. - Switch migration task to use the thread pool executor. - Add a pre-fetch task to start reading the main tab list metadata file into a byte stream upon construction. - Add UMA stats to track how long it takes for loadState to wait for the completion of the pre-fetch task. - Remove old UMA stat. BUG= 612574 Review-Url: https://codereview.chromium.org/1996613003 Cr-Commit-Position: refs/heads/master@{#396343} [modify] https://crrev.com/bda78ff1475ff7e24fa57ed2e25924ee49af0d7b/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/TabPersistentStore.java [modify] https://crrev.com/bda78ff1475ff7e24fa57ed2e25924ee49af0d7b/chrome/android/javatests/src/org/chromium/chrome/browser/incognito/IncognitoNotificationServiceTest.java [modify] https://crrev.com/bda78ff1475ff7e24fa57ed2e25924ee49af0d7b/chrome/android/javatests/src/org/chromium/chrome/browser/tabmodel/DocumentModeAssassinTest.java [modify] https://crrev.com/bda78ff1475ff7e24fa57ed2e25924ee49af0d7b/chrome/android/javatests/src/org/chromium/chrome/browser/tabmodel/TabPersistentStoreTest.java [modify] https://crrev.com/bda78ff1475ff7e24fa57ed2e25924ee49af0d7b/tools/metrics/histograms/histograms.xml
Issue 149666 has been merged into this issue.
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/9685a9834992f2b8bb95bd0e3816034dce2fe2fd commit 9685a9834992f2b8bb95bd0e3816034dce2fe2fd Author: wnwen <wnwen@chromium.org> Date: Wed Jun 08 14:46:03 2016 Prefetch active tab state. - Store the active tab id as a shared preference every time the tab list is saved. - Add a new AsyncTask to prefetch the previous active tab's TabState. The results of this task is used instead of synchronously restoring the active tab's TabState on startup. - Currently, if the active tab model is incognito, then this will not speed up startup. The active incognito tab (if any) can be considered for prefetching later. BUG= 612574 , 149625 Review-Url: https://codereview.chromium.org/2028683003 Cr-Commit-Position: refs/heads/master@{#398551} [modify] https://crrev.com/9685a9834992f2b8bb95bd0e3816034dce2fe2fd/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/TabPersistentStore.java [modify] https://crrev.com/9685a9834992f2b8bb95bd0e3816034dce2fe2fd/chrome/android/javatests/src/org/chromium/chrome/browser/tabmodel/RestoreMigrateTest.java [modify] https://crrev.com/9685a9834992f2b8bb95bd0e3816034dce2fe2fd/chrome/android/javatests/src/org/chromium/chrome/browser/tabmodel/TabPersistentStoreTest.java [modify] https://crrev.com/9685a9834992f2b8bb95bd0e3816034dce2fe2fd/chrome/test/android/javatests/src/org/chromium/chrome/test/util/browser/tabmodel/MockTabModel.java [modify] https://crrev.com/9685a9834992f2b8bb95bd0e3816034dce2fe2fd/tools/metrics/histograms/histograms.xml
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/6a48a177e5b82fa730438097673c61ca24c9af29 commit 6a48a177e5b82fa730438097673c61ca24c9af29 Author: wnwen <wnwen@chromium.org> Date: Mon Jun 20 13:12:42 2016 Store last saved tab metadata to avoid resaving. - Do not re-save to disk if new metadata is the same as the old. - Add stats to determine where saveState is spending most of its time. - Move to using uptimeMillis to avoid stats being influenced by time spent in sleep. BUG= 612574 Review-Url: https://codereview.chromium.org/2057733002 Cr-Commit-Position: refs/heads/master@{#400665} [modify] https://crrev.com/6a48a177e5b82fa730438097673c61ca24c9af29/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/TabPersistentStore.java [modify] https://crrev.com/6a48a177e5b82fa730438097673c61ca24c9af29/tools/metrics/histograms/histograms.xml
Opps, forgot to close this bug.
Comment 1 by bugdroid1@chromium.org
, May 18 2016