This patch changes Firefox Health Report to pull crash counts from the
newly-implemented crash manager. The crash manager is now the canonical
source of crash data, so all the code for reading crash dump files from
disk has been removed.
This regresses the collection capability of Firefox Health Report by
removing plugin crashes and hangs from the reported values. This
regression is intended to be temporary and a follow-up bug will be
created to add plugin process event recording to the crash events
system.
This regression has been justified because the old crash reporting
mechanism was severely flawed and wasn't sending accurate data (not all
crashes were being saved to dumps and some dumps would be deleted).
--HG--
extra : amend_source : d54bb3bf9f740508cb4eda286536ce16a4c3bee5
This patch changes Firefox Health Report to pull crash counts from the
newly-implemented crash manager. The crash manager is now the canonical
source of crash data, so all the code for reading crash dump files from
disk has been removed.
This regresses the collection capability of Firefox Health Report by
removing plugin crashes and hangs from the reported values. This
regression is intended to be temporary and a follow-up bug will be
created to add plugin process event recording to the crash events
system.
This regression has been justified because the old crash reporting
mechanism was severely flawed and wasn't sending accurate data (not all
crashes were being saved to dumps and some dumps would be deleted).
--HG--
extra : rebase_source : 7442a712d06b4d875010e78d4dd4f5cc179c8dfc
Previously, it was technically possible for the FHR client to have
multiple simultaneous uploads. While this should never occur in
well-behaving systems, server logs have indicated that this behavior
might be occurring.
This patch adds a lock around uploading to ensure only 1 upload
operation may be active at a given time.
To measure the impact of this change in the wild, we added a counter
that increments whenever a held lock is encountered.
--HG--
extra : rebase_source : f0bb5065a3618cd335b6b6f31e4e68850f31f151
Previously, we weren't measuring whether the machine was 64-bit
properly. This change allows us to report actual CPU architecture (at
least on Windows).
In the future, we may wish to properly report actual CPU architecture on
all operating systems.
--HG--
extra : rebase_source : 73b5673e870e959a33172ec22fee8c31db6e0e53
extra : amend_source : 64d2e23be07aa87bc5c150b6e613e6226c848ec8
We concatenate JSMs together so we use less compartments and therefore
less memory. This is intended to be a temporary hack until the overhead
of compartments is less.
We have introduced a new background service that captures session state
in preferences. Firefox Health Report now moves entries from preferences
to its database at payload generation time.
We've also introduced a few random APIs, such as enqueueTransaction()
and the ability for providers to have access to their own pref branch.
This also includes a lot of revamped Firefox Health Report features. The
payload format has changed. There is now robust service shutdown logic.
There are more prefs to control behavior. It's almost a rewritten
service.