Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
[M110] Merge to release branch to run DIPS experiment in M110 (2/3)
This cherry pick combines 4 CLs that need to be merged into M110 in order to collect metrics and experimentially do DIPS deletion. This CL relies on https://crrev.com/c/4133655 being upstream. Bug: 1404964 The combined CLs descriptions are listed below in descending chronological order. [DIPS] Add new UMA and log them when the DIPS timer fires. The added metrics measure the number of sites that would have their data cleared when the timer fires, and how long it would take to do so. Bug: 1375302 Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/4060624 Reviewed-by: Steven Holte <holte@chromium.org> Commit-Queue: Kirubel Aklilu <kaklilu@chromium.org> Reviewed-by: Joshua Hood <jdh@chromium.org> Cr-Commit-Position: refs/heads/main@{#1087229} (cherry picked from commit bc84ebd) [DIPS] Improve IsWithinOrNull to fix bad optional accesses Bug: 1403145 Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/4121246 Auto-Submit: Kirubel Aklilu <kaklilu@chromium.org> Commit-Queue: Joshua Hood <jdh@chromium.org> Reviewed-by: Joshua Hood <jdh@chromium.org> Cr-Commit-Position: refs/heads/main@{#1086515} (cherry picked from commit f754ae0) [DIPS] Update DIPS querying methods to exclude/"protect" some sites. Since the sites returned by these querying methods will have their data cleared, if a site isn't returned then its "protected" from DIPS. A site can be protected in several ways: - it's still in its grace period following a DIPS-triggering event (storage, bounce, or bounce with storage) when the query is run - it received user interaction before triggering DIPS - it received user interaction in the grace period after triggering DIPS If a site is protected by an interaction, it maintains that status until that interaction expires (after `interaction_ttl`). This CL also updates these methods in several ways as was discussed offline such as: - removing range_start in favor of scanning the whole DB - this is feasible since the DB will be kept small from clearing expired interactions and clearing rows as their data is cleared - removing last_interaction in favor of directly inserting the result of `Now() - interactionTtl` to check if the interaction is expired - using the new (first|last)_bounce_time columns defined in v2 of the DIPS database schema Unit tests are added for the querying methods to verify that the `grace_period` and `interaction_ttl` feature params are used by each method as intended. Bug: 1375302 Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/4111381 Reviewed-by: Ryan Tarpine <rtarpine@chromium.org> Reviewed-by: Joshua Hood <jdh@chromium.org> Commit-Queue: Kirubel Aklilu <kaklilu@chromium.org> Cr-Commit-Position: refs/heads/main@{#1085996} (cherry picked from commit 4645332) sql: Add BindTimeDelta() and ColumnTimeDelta() to sql::Statement These helpers use the recommended approach to serialize/deserialize a base::TimeDelta to/from int64. These methods are added to encourage usage of built-in ways to insert and retrieve a TimeDelta from a sql database, and discourage usage of the `statement.BindInt64(delta.ToInternalValue())` pattern since TimeDelta::ToInternalValue is deprecated. Bug: 1402777, 1195962 (cherry picked from commit 97f422c) Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/4118621 Reviewed-by: Christos Froussios <cfroussios@chromium.org> Reviewed-by: manuk hovanesian <manukh@chromium.org> Commit-Queue: Kirubel Aklilu <kaklilu@chromium.org> Reviewed-by: Evan Stade <estade@chromium.org> Cr-Original-Commit-Position: refs/heads/main@{#1085968} Change-Id: I72174903b913087e8575f72c14c9293db03328ef Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/4134133 Reviewed-by: Joshua Hood <jdh@chromium.org> Reviewed-by: Charlie Harrison <csharrison@chromium.org> Cr-Commit-Position: refs/branch-heads/5481@{#155} Cr-Branched-From: 130f3e4-refs/heads/main@{#1084008}
- Loading branch information