As mentioned in bug 1784911 comment 17, this new and improved behaviour highlights an existing Glean SDK problem: what if a ping is defined with
ping-lifetime metrics but is never submitted? The SDK'll happily store information for that ping, assuming it'll have a chance to wipe the storage on submit... but it'll never wipe it.
event metrics, this would introduce a small but fixed amount of cruft in the db. Storing a
timing_distribution for all time will waste some bytes, but not too many.
event metrics, each record will be added to the db and stored until we reach sizes that trigger db clearing. We'll fill up. There's no bound on the number of events that might be recorded and never cleared by ping submission.
Our current solution of "ask folks not to do this" won't work for
firefox_desktop_background_agent because both app_ids submit from the same binary running in different modes. They'll each have their own custom pings with events (
firefox_desktop has "newtab",
firefox_desktop_background_agent has "background-update"), so each'll exhibit this problem.
We'll need some sort of solution for this.