Closed Bug 1607297 Opened 1 year ago Closed 1 year ago

Nightly recordings are too large


(Core Graveyard :: Web Replay, defect)

Not set


(firefox74 fixed)

Tracking Status
firefox74 --- fixed


(Reporter: bhackett1024, Assigned: bhackett1024)


(Blocks 1 open bug)



(1 file)

When I do a local opt build and visit a simple "Hello World" page, the resulting recording size is 1.2 MB. When I do the same thing in a current nightly, the recording size is 32 MB. The latter needs to be fixed to match the former; there is probably some difference in the system calls made at startup which is causing this (I'm guessing mmap'ing some big files into memory), but it might take a little while to track down because I'll need to debug this using the DMGs from tryserver runs (I don't know how to build nightly DMGs myself).

Big recordings are bad in general but this is especially a problem with cloud replay because recordings need to be uploaded to the cloud before the remote process can replay them.

With a tip from Jason to use mach package I was able to build my own DMGs and reproduce this with local builds. The problem is indeed that when running a packaged browser there are extra mmap calls --- most browser resources are packed into a couple omni.ja files ( that are 70 MB in total and contain almost all the browser's resources. Recordings don't have to include the contents of these files because when replaying we have still have the identical file and can open it directly (we can still include a hash of the file contents in the recording as a sanity check). The above patch performs this optimization for any file in the installation directory (which we figure out using the executable path and some gross string manipulation code), reducing the "Hello World" recording size to 950 K.

Pushed by
Don't include file contents from the firefox install directory in recordings, r=jlast.
Closed: 1 year ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla74
Product: Core → Core Graveyard
You need to log in before you can comment on or make changes to this bug.