Skip to content

Commit 376b25c

Browse files
committed
feat: add addons_theme to active addons. fix: client duplication
1 parent 5e59c24 commit 376b25c

File tree

1 file changed

+17
-8
lines changed
  • sql/moz-fx-data-shared-prod/amo_glean_derived/firefox_desktop_addons_by_client_v1

1 file changed

+17
-8
lines changed

sql/moz-fx-data-shared-prod/amo_glean_derived/firefox_desktop_addons_by_client_v1/query.sql

Lines changed: 17 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,28 +1,35 @@
11
WITH base AS (
22
SELECT
33
submission_timestamp,
4+
DATE(submission_timestamp) AS submission_date,
45
client_info.client_id,
56
sample_id,
6-
IFNULL(metrics.uuid.legacy_telemetry_client_id, "") AS legacy_telemetry_client_id,
7+
metrics.uuid.legacy_telemetry_client_id,
78
normalized_channel,
89
normalized_country_code,
910
client_info.locale,
1011
normalized_os,
1112
client_info.app_display_version,
12-
JSON_QUERY_ARRAY(metrics.object.addons_active_addons, '$') AS active_addons,
13+
-- merging active_addons and addons_theme into a single addons object
14+
ARRAY_CONCAT(
15+
JSON_QUERY_ARRAY(metrics.object.addons_active_addons, '$'),
16+
[JSON_QUERY(metrics.object.addons_theme, '$')]
17+
) AS active_addons,
1318
FROM
1419
`moz-fx-data-shared-prod.firefox_desktop.metrics`
1520
WHERE
1621
DATE(submission_timestamp) = @submission_date
1722
AND client_info.client_id IS NOT NULL
18-
AND metrics.object.addons_active_addons IS NOT NULL
23+
AND (metrics.object.addons_active_addons IS NOT NULL OR metrics.object.addons_theme IS NOT NULL)
1924
),
2025
per_clients_without_addons AS (
2126
SELECT
22-
DATE(submission_timestamp) AS submission_date,
27+
submission_date,
2328
client_id,
2429
sample_id,
25-
legacy_telemetry_client_id,
30+
mozfun.stats.mode_last(
31+
ARRAY_AGG(legacy_telemetry_client_id ORDER BY submission_timestamp)
32+
) AS legacy_telemetry_client_id,
2633
ARRAY_AGG(
2734
app_display_version
2835
ORDER BY
@@ -40,10 +47,12 @@ per_clients_without_addons AS (
4047
),
4148
per_clients_just_addons AS (
4249
SELECT
43-
DATE(submission_timestamp) AS submission_date,
50+
submission_date,
4451
client_id,
4552
sample_id,
46-
legacy_telemetry_client_id,
53+
mozfun.stats.mode_last(
54+
ARRAY_AGG(legacy_telemetry_client_id ORDER BY submission_timestamp)
55+
) AS legacy_telemetry_client_id,
4756
ARRAY_CONCAT_AGG(
4857
ARRAY(
4958
SELECT AS STRUCT
@@ -76,7 +85,7 @@ per_client AS (
7685
USING (submission_date, client_id, sample_id, legacy_telemetry_client_id)
7786
)
7887
SELECT
79-
* EXCEPT (addons) REPLACE(NULLIF(legacy_telemetry_client_id, "") AS legacy_telemetry_client_id),
88+
* EXCEPT (addons),
8089
ARRAY(
8190
SELECT AS STRUCT
8291
addon.id,

0 commit comments

Comments
 (0)