`setEnabled` doesn't work as expected for pings with `follows_collection_enabled: false`
Categories
(Toolkit :: Telemetry, defect, P1)
Tracking
()
Tracking | Status | |
---|---|---|
firefox136 | --- | fixed |
People
(Reporter: chutten, Assigned: janerik)
References
Details
Attachments
(1 file)
:adw writes with problems he's been encountering testing his "quick-suggest" ping change from bug 1940808 on artefact builds. His tests just fail.
Lucky for us, he did some digging and has a theory of the problem:
I did some debugging. There are at least two problems. First, set_ping_enabled_by_id needs to look up the ping in the JOG ping map like submit_ping_by_id does. As is,
PingType::submit_sync
thinks that the ping is disabled and enters this if-branch here.With that fixed,
PingType::submit_sync
properly sees that the ping is enabled, but a little later it thinks that the ping has no content, here. That’s becauseDatabase::record
thinks that the ping is disabled because itsglean.is_ping_enabled
call here returns false. And AFAICT that’s becauseGlean::register_ping_type
adds a clone of the ping to itsping_registry
map. And of course, I’m callingsetEnabled(true)
on my ping after it’s registered.So it seems to me that
setEnabled
doesn’t work as expected for pings withfollows_collection_enabled: false
, or any ping that’s disabled when it’s registered.
Assignee | ||
Comment 1•28 days ago
|
||
Do I read this right that it's a problem only in artifact builds?
Updated•28 days ago
|
Assignee | ||
Comment 2•28 days ago
|
||
Answered in chat: it seems the tests are only failing in artifact builds. But there might be more hiding so I'm taking a closer look.
Assignee | ||
Updated•28 days ago
|
Reporter | ||
Updated•26 days ago
|
Assignee | ||
Comment 3•26 days ago
|
||
Comment 5•24 days ago
|
||
bugherder |
Description
•