Closed Bug 1973102 Opened 6 months ago Closed 5 months ago

Vendor Glean SDK v64.5.1

Categories

(Data Platform and Tools :: Glean: SDK, task, P1)

task

Tracking

(firefox142 fixed)

RESOLVED FIXED
Tracking Status
firefox142 --- fixed

People

(Reporter: chutten|PTO, Assigned: chutten|PTO)

References

(Blocks 1 open bug, Regressed 1 open bug)

Details

Attachments

(6 files)

It has a new dual_labeled_counter metric type that we'll be wanting to use presently, plus a fix to label counting: Release Notes.

No profiler markers because no impl MetricType for
glean::DualLabeledCounterMetric (bug 1973287)

Also includes JOG support.

Submetrics assume they're always submetrics of labeled_* metrics,
but now counters could also be submetrics of a dual_labeled_counter.
Take a page from FOG Rust's book and encode the parent metric's type as part of
the submetrics' type.

Open q'ns:

  • Should we call it CounterMetricImpl<C> and
    using CounterMetric = CounterMetricImpl<CounterType::eBaseOrLabeled>;?
  • Should the FFI distinguish between the add/test methods on the submetric
    and the get method on the parent? They're all dual_labeled_counter_*.

Supports mirroring to histograms with keyed: true and
kind: {categorical|boolean}.

Pushed by agoloman@mozilla.com: https://github.com/mozilla-firefox/firefox/commit/0a6987f5b9da https://hg.mozilla.org/integration/autoland/rev/51a3a2418f56 Revert "Bug 1973102 - Don't special-case GC histograms post-bug-1949494 r=TravisLong,florian" for causing failures @generateBaselineProfile.

Backed out for causing run failures and build bustages.

Flags: needinfo?(chutten)
Blocks: 1974069
Blocks: 1974071

Current status:

So it turns out that when you build the whole shebang, gradle gets the latest glean_parser and latest Glean SDK and builds successfully because the latest changes to Glean to support dual_labeled_counter aren't breaking outside of the boundary scribed by those two tools together. The interface between those two tools did change, though, and that causes problems when a task uses some prebuilt components and some non-prebuilt components together, like when you try just bookmarks sync or the PGO run.

The solution we're pursuing is the same as if this were a capital-B Breaking change: vendor the Glean+glean_parser update manually into application-services and coordinate the inclusion into mozilla-central of that nightly build of application-services to happen at the same time as we vendor Glean+glean_parser into m-c. (An alternate solution would be to somehow explain to Gradle that it can't mix and match like this, but we're going to stick with the tried-and-true method this time.)

(( The team has resolved to treat changes between the Glean SDK and glean_parser as Breaking for the purposes of deciding when to make a major semver increment from now on to hopefully prevent this from catching us off guard again. ))

When that's all landed, likely tomorrow, we can lay the FOG dual_labeled_counter implementation patches overtop and be good to land.

Flags: needinfo?(chutten)
Summary: Vendor Glean SDK v64.5.0 → Vendor Glean SDK v64.5.1
Attachment #9496567 - Attachment description: Bug 1973102 - Upgrade to Glean v64.5.0 r?TravisLong → Bug 1973102 - Upgrade to Glean v64.5.1 r?TravisLong
Blocks: 1974372
Status: ASSIGNED → RESOLVED
Closed: 6 months ago
Resolution: --- → FIXED

Oops, forgot to add the keep-open tag. There's some patches we now need to land as a followup. That's back in :chutten's hands.

Status: RESOLVED → REOPENED
Resolution: FIXED → ---
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: