Removed FX_PREFERENCES_OPENED_VIA probe as it expired in 63.Origin parameter for openPreferences has also been removed.
Differential Revision: https://phabricator.services.mozilla.com/D26795
Originally, RDD reused the GPU process selector since they were
using all the same services, and it reduced the number of places
that had to be touched. Now that RDD needs pref handling, it
needs its own process selector to avoid GPU inheriting pref
handling.
Differential Revision: https://phabricator.services.mozilla.com/D26566
Disable gtests observed to fail on Android. Some of these are simple build
failures and failures due to file permissions or paths, while other failures
are more obscure.
Once Android gtests are running on mozilla-central, I will file follow-up
bugs inviting teams to investigate the failures and re-enable Android gtests
that are important to them.
Differential Revision: https://phabricator.services.mozilla.com/D26606
This is only called on environment-changed pings.
We avoid re-setting the scheduler timeout, so that we can trigger other
pings at regular intervals unrelated to main pings.
This will not cause the daily ping to be sent more often, at worst we
schedule something once too frequently.
Depends on D26149
Differential Revision: https://phabricator.services.mozilla.com/D26150
Since reporting intervals are ~1 day/1 session, the Origin Telemetry prototype
must support the possibility that multiple origins will be recorded for the
same metric.
For example, if the user is sampled to record two pageloads where the same
ultra-common tracker is present and blocked we must record that tracker as
having been blocked twice.
This requires a bit of a shift in storage and plaintext snapshot. Instead of
being an array of origins with duplicates, now we're storing origins as a bag
(aka multiset, aka hashtable of origin->count).
Differential Revision: https://phabricator.services.mozilla.com/D25283
Content Blocking's list is longer than the largest bool vector size supported
by PrioEncoder, so we need to split the list into shards before encoding.
This means we need to use the metric name and shard number together to identify
the encoding so it's possible to decode it later.
While I'm here, restructure GetEncodedSnapshots to make my life easier when I
eventually try to put the heavy lifting on its own thread. There's a clearer
split now between JS stuff and non-JS stuff.
Differential Revision: https://phabricator.services.mozilla.com/D25129
In order to notify the "prio" ping when we reach the data limit, we need to
keep an accounting of how many prioData elements we'd need to encode what's in
storage.
This also adds the pref reading and topic notification code for the
"origin-telemetry-storage-limit-reached" topic that the "prio" ping observes.
Differential Revision: https://phabricator.services.mozilla.com/D25127
The CHECKERBOARD probes are used as performance outcomes / diagnostics for WebRender.
We are beginning to test WebRender in release, so we should have these probes available.
This change additionally extends collection through version 73 to be compatible
with the January 2020 horizon for the ongoing nightly/beta WebRender study.
Differential Revision: https://phabricator.services.mozilla.com/D25126
Since reporting intervals are ~1 day/1 session, the Origin Telemetry prototype
must support the possibility that multiple origins will be recorded for the
same metric.
For example, if the user is sampled to record two pageloads where the same
ultra-common tracker is present and blocked we must record that tracker as
having been blocked twice.
This requires a bit of a shift in storage and plaintext snapshot. Instead of
being an array of origins with duplicates, now we're storing origins as a bag
(aka multiset, aka hashtable of origin->count).
Differential Revision: https://phabricator.services.mozilla.com/D25283
Content Blocking's list is longer than the largest bool vector size supported
by PrioEncoder, so we need to split the list into shards before encoding.
This means we need to use the metric name and shard number together to identify
the encoding so it's possible to decode it later.
While I'm here, restructure GetEncodedSnapshots to make my life easier when I
eventually try to put the heavy lifting on its own thread. There's a clearer
split now between JS stuff and non-JS stuff.
Differential Revision: https://phabricator.services.mozilla.com/D25129
In order to notify the "prio" ping when we reach the data limit, we need to
keep an accounting of how many prioData elements we'd need to encode what's in
storage.
This also adds the pref reading and topic notification code for the
"origin-telemetry-storage-limit-reached" topic that the "prio" ping observes.
Differential Revision: https://phabricator.services.mozilla.com/D25127
1. Adding a new attribute chromeContext in ConsoleEvent
2. Adding a new boolean attribute isFromChromeContext in nsIConsoleMessage
3. Sending IsFromChromeContext to the parent process
Differential Revision: https://phabricator.services.mozilla.com/D23330
All of the consumers of this observer really want it to behave like a promise.
And, for the cases where the DB may or may not already be loaded when those
callers run, getting the logic correct is difficult.
This patch replaces the observer with a promise, and also delays the
resolution of that promise until any built-in add-ons registered during
XPIProvider startup have finished installing. This latter feature is currently
unused, but will be necessary after subsequent patches for code that relies
querying the default theme immediately after provider startup.