Allow calling setExperimentActive prior to Glean initialization
Categories
(Data Platform and Tools :: Glean: SDK, defect, P1)
Tracking
(Not tracked)
People
(Reporter: mdroettboom, Assigned: Dexter)
Details
(Whiteboard: [telemetry:glean-rs:m11][glean-22.0.0])
Attachments
(1 file)
In Kotlin, Glean.setExperimentActive is a no-op when Glean hasn't been initialized.
Maybe we could use the same task queueing mechanism we use for metrics recording to make that possible, though?
Assignee | ||
Comment 1•6 years ago
|
||
(In reply to Michael Droettboom [:mdroettboom] from comment #0)
In Kotlin, Glean.setExperimentActive is a no-op when Glean hasn't been initialized.
Maybe we could use the same task queueing mechanism we use for metrics recording to make that possible, though?
Uh-oh, this could be a bug, since the experiment library doesn't check (and that's ok) if Glean is initialized. We could fail to tag.
Travis, do you know if any experiment is currently being run?
Comment 2•6 years ago
|
||
Yes, we are currently running an experiment around enhanced tracking protection, slated to end in @ 2 weeks with the launch of FF Preview 3.0
Comment 3•6 years ago
•
|
||
While this is definitely a good idea to fix this, I don't think that this is as likely to occur in real life as I first thought. Glean and Mako both get initialized about the same time, but Mako doesn't enroll (tag) experiments until after it has made a network request, downloaded the list of experiments, and then checked for enrollment. So there's some delay in there that means that (for most applications) that Glean should be initialized before Mako attempts to set the experiment enabled. On startup, with a cached experiment list? Then it might be a little more likely.
Assignee | ||
Comment 4•6 years ago
|
||
All right, thanks! Looks like we should fix this :)
Assignee | ||
Updated•6 years ago
|
Assignee | ||
Comment 5•6 years ago
|
||
Assignee | ||
Comment 6•6 years ago
|
||
This was merged and will make it into Glean SDK 22.0.0.
Assignee | ||
Updated•6 years ago
|
Description
•