Skip to content

Commit

Permalink
Prerender: deprecate kEmbedderTriggeredAndDestroyed
Browse files Browse the repository at this point in the history
This type was introduced by I816113d3792c32cfe19bafd5e669c83b94b52053.
Checking its usage seems to be the same as TriggerDestroyed, as the
trigger type has already told us the trigger. So, to simplify
PrerenderHost::FinalStatus, we can replace
kEmbedderTriggeredAndDestroyed with TriggerDestroyed.

Bug: N/A
Change-Id: I8218bc1635385320eb1fbed91db87412fd4eea58
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3789540
Reviewed-by: Andrey Kosyakov <caseq@chromium.org>
Commit-Queue: Lingqi Chi <lingqi@chromium.org>
Reviewed-by: Hiroki Nakagawa <nhiroki@chromium.org>
Reviewed-by: Danil Somsikov <dsv@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1034966}
  • Loading branch information
Clqsin45 authored and Chromium LUCI CQ committed Aug 15, 2022
1 parent 3bd34df commit 9067997
Show file tree
Hide file tree
Showing 8 changed files with 9 additions and 15 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -583,7 +583,7 @@ IN_PROC_BROWSER_TEST_F(PrerenderOmniboxSearchSuggestionExpiryBrowserTest,
histogram_tester.ExpectUniqueSample(
"Prerender.Experimental.PrerenderHostFinalStatus.Embedder_"
"DefaultSearchEngine",
/*PrerenderHost::FinalStatus::kEmbedderTriggeredAndDestroyed*/ 35, 1);
/*PrerenderHost::FinalStatus::kTriggerDestroyed*/ 16, 1);

// Select the prerender hint. The prerendered result has been deleted, so
// browser loads the search result over again.
Expand Down Expand Up @@ -628,7 +628,7 @@ IN_PROC_BROWSER_TEST_F(PrerenderOmniboxSearchSuggestionExpiryBrowserTest,
histogram_tester.ExpectUniqueSample(
"Prerender.Experimental.PrerenderHostFinalStatus.Embedder_"
"DefaultSearchEngine",
/*PrerenderHost::FinalStatus::kEmbedderTriggeredAndDestroyed*/ 35, 1);
/*PrerenderHost::FinalStatus::kTriggerDestroyed*/ 16, 1);

// Nothing should be recorded. Because there is no new navigation nor new
// search suggestion.
Expand Down
2 changes: 0 additions & 2 deletions content/browser/devtools/protocol/page_handler.cc
Original file line number Diff line number Diff line change
Expand Up @@ -1421,8 +1421,6 @@ Page::PrerenderFinalStatus PrerenderFinalStatusToProtocol(
case PrerenderHost::FinalStatus::kEmbedderTriggeredAndCrossOriginRedirected:
return Page::PrerenderFinalStatusEnum::
EmbedderTriggeredAndCrossOriginRedirected;
case PrerenderHost::FinalStatus::kEmbedderTriggeredAndDestroyed:
return Page::PrerenderFinalStatusEnum::EmbedderTriggeredAndDestroyed;
case PrerenderHost::FinalStatus::kEmbedderTriggeredAndSameOriginRedirected:
return Page::PrerenderFinalStatusEnum::
EmbedderTriggeredAndSameOriginRedirected;
Expand Down
6 changes: 2 additions & 4 deletions content/browser/preloading/prerender/prerender_handle_impl.cc
Original file line number Diff line number Diff line change
Expand Up @@ -16,8 +16,7 @@ PrerenderHandleImpl::PrerenderHandleImpl(
frame_tree_node_id_(frame_tree_node_id),
prerendering_url_(prerendering_url) {
DCHECK(!prerendering_url_.is_empty());
// PrerenderHandleImpl is now designed only for embedder triggers (e.g.,
// recording kEmbedderTriggeredAndDestroyed on the destructor). If you use
// PrerenderHandleImpl is now designed only for embedder triggers. If you use
// this handle for other triggers, please make sure to update the logging etc.
auto* prerender_host =
prerender_host_registry_->FindNonReservedHostById(frame_tree_node_id);
Expand All @@ -28,8 +27,7 @@ PrerenderHandleImpl::PrerenderHandleImpl(
PrerenderHandleImpl::~PrerenderHandleImpl() {
if (prerender_host_registry_) {
prerender_host_registry_->CancelHost(
frame_tree_node_id_,
PrerenderHost::FinalStatus::kEmbedderTriggeredAndDestroyed);
frame_tree_node_id_, PrerenderHost::FinalStatus::kTriggerDestroyed);
}
}

Expand Down
3 changes: 1 addition & 2 deletions content/browser/preloading/prerender/prerender_host.cc
Original file line number Diff line number Diff line change
Expand Up @@ -644,9 +644,8 @@ void PrerenderHost::SetFailureReason(FinalStatus status) {
// explicitly do not propagate failure reasons if the prerender was actually
// successful (kActivated), or if prerender was successfully prepared but
// then destroyed because it wasn't needed for a subsequent navigation
// (kTriggerDestroyed, kEmbedderTriggeredAndDestroyed).
// (kTriggerDestroyed).
case FinalStatus::kActivated:
case FinalStatus::kEmbedderTriggeredAndDestroyed:
case FinalStatus::kTriggerDestroyed:
return;
case FinalStatus::kDestroyed:
Expand Down
4 changes: 3 additions & 1 deletion content/browser/preloading/prerender/prerender_host.h
Original file line number Diff line number Diff line change
Expand Up @@ -92,7 +92,9 @@ class CONTENT_EXPORT PrerenderHost : public WebContentsObserver {
// kEmbedderTriggeredAndRedirected = 32,
kEmbedderTriggeredAndSameOriginRedirected = 33,
kEmbedderTriggeredAndCrossOriginRedirected = 34,
kEmbedderTriggeredAndDestroyed = 35,
// Deprecated. This has the same meaning as kTriggerDestroyed because the
// metric's name includes trigger type.
// kEmbedderTriggeredAndDestroyed = 35,
kMemoryLimitExceeded = 36,
kFailToGetMemoryUsage = 37,
kDataSaverEnabled = 38,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -76,8 +76,6 @@ const char* FinalStatusToString(PrerenderHost::FinalStatus final_status) {
return "EmbedderTriggeredAndSameOriginRedirected";
case PrerenderHost::FinalStatus::kEmbedderTriggeredAndCrossOriginRedirected:
return "EmbedderTriggeredAndCrossOriginRedirected";
case PrerenderHost::FinalStatus::kEmbedderTriggeredAndDestroyed:
return "EmbedderTriggeredAndDestroyed";
case PrerenderHost::FinalStatus::kMemoryLimitExceeded:
return "MemoryLimitExceeded";
case PrerenderHost::FinalStatus::kFailToGetMemoryUsage:
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -8459,7 +8459,6 @@ domain Page
TriggerBackgrounded
EmbedderTriggeredAndSameOriginRedirected
EmbedderTriggeredAndCrossOriginRedirected
EmbedderTriggeredAndDestroyed
MemoryLimitExceeded
# Prerenders can be cancelled when Chrome uses excessive memory. This is
# recorded when it fails to get the memory usage.
Expand Down
2 changes: 1 addition & 1 deletion tools/metrics/histograms/enums.xml
Original file line number Diff line number Diff line change
Expand Up @@ -78939,7 +78939,7 @@ Called by update_net_trust_anchors.py.-->
<int value="32" label="kEmbedderTriggeredAndRedirected"/>
<int value="33" label="kEmbedderTriggeredAndSameOriginRedirected"/>
<int value="34" label="kEmbedderTriggeredAndCrossOriginRedirected"/>
<int value="35" label="kEmbedderTriggeredAndDestroyed"/>
<int value="35" label="kEmbedderTriggeredAndDestroyed (obsoleted)"/>
<int value="36" label="kMemoryLimitExceeded"/>
<int value="37" label="kFailToGetMemoryUsage"/>
<int value="38" label="kDataSaverEnabled"/>
Expand Down

0 comments on commit 9067997

Please sign in to comment.