Closed Bug 1497996 Opened 6 years ago Closed 4 years ago

Persist Activity Stream DOM content to disk at shutdown, and load that cache on start-up

Categories

(Firefox :: New Tab Page, enhancement, P2)

enhancement

Tracking

()

RESOLVED DUPLICATE of bug 1614351
Tracking Status
firefox63 --- wontfix
firefox64 --- wontfix

People

(Reporter: mconley, Unassigned)

References

Details

(Whiteboard: [fxperf:p2])

Right now, we do some preloading work so that Activity Stream has some pre-existing DOM to "hydrate" once it pulls enough state together in the parent process and sends it down to the content process.

I think we can take this a step further. Suppose at shut down (or after the most recent state update), we take a snapshot of Activity Stream's DOM, and persist it to disk off of the main thread. Maybe in indexedDB. Maybe in a file. Who knows.

Then, at next start-up (or maybe next newtab load), instead of loading the preload DOM and hydrating with React, we load the content (text, images, everything) from the file (or indexedDB, etc). That way, we don't actually need to fire up the Activity Stream stuff in the parent process for producing the new state until the parent has some free time.

This was originally florian's idea, and I think it's a good one.
Whiteboard: [fxperf]
(In reply to Mike Conley (:mconley) (:⚙️) from comment #0)
> Suppose at shut down (or after the
> most recent state update), we take a snapshot of Activity Stream's DOM, and
> persist it to disk off of the main thread.

It would be preferable if we could avoid adding more I/O during shutdown. Doing this during idle time would be nice.
Whiteboard: [fxperf] → [fxperf:p2]
Iteration: --- → 65.1 (Nov 2)
Priority: -- → P2
Iteration: 65.1 (Nov 2) → 65.2 (Nov 16)
Iteration: 65.2 (Nov 16) → 65.3 (Nov 30)
Iteration: 65.3 (Nov 30) → 66.1 - Dec 10-23
Iteration: 66.1 - Dec 10-23 → ---
Priority: P2 → P3
Iteration: --- → 68.1 - Mar 18 - 31
Priority: P3 → P1
Iteration: 68.1 - Mar 18 - 31 → ---
Priority: P1 → P2
Component: Activity Streams: Newtab → New Tab Page
Status: NEW → RESOLVED
Closed: 4 years ago
Resolution: --- → DUPLICATE
You need to log in before you can comment on or make changes to this bug.