New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.
Starred by 6 users

Issue metadata

Status: Fixed
Owner:
Closed: Aug 2
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Linux , Android , Windows , Chrome , Mac
Pri: 2
Type: Bug



Sign in to add a comment

Flag to disable pushState throttle (and console message)

Project Member Reported by creis@chromium.org, Sep 28 2017

Issue description

Context: https://bugs.chromium.org/p/chromium/issues/detail?id=394296#c84

r485498 introduced a pushState/replaceState throttle to avoid some subset of denial of service attacks on the browser process.

We've heard from Netflix that this caused a problem for an automated test suite, and there weren't any visible clues for why it wasn't working.

It would help to add something like a --disable-pushstate-throttle command line flag to allow test suites to work, along with a console message when the throttle kicks in (mentioning the flag).

palmer@, would you be able to add this to follow up on r485498?  (Sorry-- no good deed...)  :)
 

Comment 1 by twil...@netflix.com, Sep 28 2017

FWIW, I'd be interested in submitting a patch for this if palmer won't be able to get to it soon.

Comment 2 by creis@chromium.org, Sep 28 2017

Certainly-- patches welcome!  (I would imagine that palmer@ doesn't have a lot of free time, and would probably appreciate it.)

Comment 3 by palmer@chromium.org, Sep 28 2017

#1: Certainly, and thanks. :) I'd be happy to review your code, help you out with getting the patch together, or helping in whatever way.
I've opened a review for this here: https://chromium-review.googlesource.com/c/chromium/src/+/695645
Cc: palmer@chromium.org
Issue 794923 has been merged into this issue.
Status: Started (was: Assigned)
Project Member

Comment 7 by bugdroid1@chromium.org, Mar 14

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/917bc057cb5c399d853f1e4ac159b973b58e0294

commit 917bc057cb5c399d853f1e4ac159b973b58e0294
Author: Chris Palmer <palmer@chromium.org>
Date: Wed Mar 14 19:28:31 2018

Log a message on the console when the {push,replace}State quota is exceeded.

Previously, history.{push,replace}State spam failed silently, causing developer
confusion.

This change also introduces the --disable-pushstate-throttle flag to allow users
to disable the throttling.

This work was primarily authored by Trent Willis <trentmwillis@gmail.com>.

R=creis@chromium.org, dcheng@chromium.org

Bug:  769592 , 794923
Change-Id: I969456b190d535f8dee3e03b5c4f4f36730d6b38
Reviewed-on: https://chromium-review.googlesource.com/851000
Commit-Queue: Chris Palmer <palmer@chromium.org>
Reviewed-by: Charlie Reis <creis@chromium.org>
Reviewed-by: Daniel Cheng <dcheng@chromium.org>
Cr-Commit-Position: refs/heads/master@{#543154}
[modify] https://crrev.com/917bc057cb5c399d853f1e4ac159b973b58e0294/AUTHORS
[modify] https://crrev.com/917bc057cb5c399d853f1e4ac159b973b58e0294/chrome/browser/about_flags.cc
[modify] https://crrev.com/917bc057cb5c399d853f1e4ac159b973b58e0294/chrome/browser/flag_descriptions.cc
[modify] https://crrev.com/917bc057cb5c399d853f1e4ac159b973b58e0294/chrome/browser/flag_descriptions.h
[modify] https://crrev.com/917bc057cb5c399d853f1e4ac159b973b58e0294/content/browser/renderer_host/render_view_host_impl.cc
[modify] https://crrev.com/917bc057cb5c399d853f1e4ac159b973b58e0294/content/public/common/common_param_traits_macros.h
[modify] https://crrev.com/917bc057cb5c399d853f1e4ac159b973b58e0294/content/public/common/content_switches.cc
[modify] https://crrev.com/917bc057cb5c399d853f1e4ac159b973b58e0294/content/public/common/content_switches.h
[modify] https://crrev.com/917bc057cb5c399d853f1e4ac159b973b58e0294/content/public/common/web_preferences.cc
[modify] https://crrev.com/917bc057cb5c399d853f1e4ac159b973b58e0294/content/public/common/web_preferences.h
[modify] https://crrev.com/917bc057cb5c399d853f1e4ac159b973b58e0294/content/renderer/render_view_impl.cc
[modify] https://crrev.com/917bc057cb5c399d853f1e4ac159b973b58e0294/third_party/WebKit/Source/core/exported/WebSettingsImpl.cpp
[modify] https://crrev.com/917bc057cb5c399d853f1e4ac159b973b58e0294/third_party/WebKit/Source/core/exported/WebSettingsImpl.h
[modify] https://crrev.com/917bc057cb5c399d853f1e4ac159b973b58e0294/third_party/WebKit/Source/core/frame/History.cpp
[modify] https://crrev.com/917bc057cb5c399d853f1e4ac159b973b58e0294/third_party/WebKit/Source/core/frame/Settings.json5
[modify] https://crrev.com/917bc057cb5c399d853f1e4ac159b973b58e0294/third_party/WebKit/public/web/WebSettings.h
[modify] https://crrev.com/917bc057cb5c399d853f1e4ac159b973b58e0294/tools/metrics/histograms/enums.xml

Status: Fixed (was: Started)
I'm closing this bug since it seems done-as-stated. However, note that there still remains  issue 786211 .

Sign in to add a comment