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 1 user

Issue metadata

Status: Fixed
Owner:
not on chrome
Closed: Nov 2016
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Windows , Mac
Pri: 2
Type: Bug



Sign in to add a comment
link

Issue 660955: Explicitly requesting a crashpad upload does not override throttling

Reported by wfh@chromium.org, Oct 31 2016 Project Member

Issue description

Version: 56.0.2905.0 (Official Build) canary (64-bit)
OS: Windows 10

What steps will reproduce the problem?
(1) Go to chrome://crashes
(2) Find a crash not uploaded
(3) Click "Send Now"

What is the expected output?

Crash should be send to the server.

What do you see instead?

Crash is not sent to the server because the throttle limit has already been hit.

Please use labels and text to provide additional information.

upload_explicitly_requested is the bool, but it's checked

https://cs.chromium.org/chromium/src/third_party/crashpad/crashpad/handler/crash_report_upload_thread.cc?rcl=0&l=195

before the throttle code is hit. There should maybe be an explicit override of the throttling code if upload_explicitly_requested is true.
 

Comment 1 by scottmg@chromium.org, Oct 31 2016

Cc: -scottmg@chromium.org gayane@chromium.org
Owner: scottmg@chromium.org
Yeah, I think that's a bug. I'll post a CL for that.

Comment 2 by gayane@chromium.org, Oct 31 2016

Cc: mark@chromium.org
This was a decision made during development. @mark can cover more on that.

Comment 3 by scottmg@chromium.org, Oct 31 2016

OK, thanks for the background. It seems pretty counter-intuitive in practice, at least in the chrome://crashes UI.

I posted https://chromium-review.googlesource.com/c/405533/ if we decide to change our mind.

Comment 4 by mark@chromium.org, Oct 31 2016

One of the reasons that a crash report becomes eligible for manual upload is that it wasn’t uploaded on the first try because it was throttled.

We do want the manual upload control to have an immediate effect, because it follows a deliberate user action.

Unless and until we plumb enough information about the throttling state all the way to the about:crashes UI, I think it would violate user expectations to act like we’re acting on a manual upload request just to see it dropped on the floor due to throttling.

I don’t think I explicitly requested otherwise, but maybe I missed it during review or maybe we thought it didn’t matter at that point because throttling was disabled on Windows.

Comment 5 by scottmg@chromium.org, Oct 31 2016

> I don’t think I explicitly requested otherwise, but maybe I missed it during review or maybe we thought it didn’t matter at that point because throttling was disabled on Windows.

That seems likely to be what it was, so we wouldn't have noticed before.

Comment 6 by bugdroid1@chromium.org, Nov 4 2016

Project Member
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/7b9234c4b2a7f4f4fa84c80ecb22d41c54899f6a

commit 7b9234c4b2a7f4f4fa84c80ecb22d41c54899f6a
Author: scottmg <scottmg@chromium.org>
Date: Fri Nov 04 19:51:28 2016

Update Crashpad to b47bf6c250c6b825dee1c5fbad9152c2c962e828

2d87606bb56b win: Start crashpad_handler by inheriting connection data
             to it
cc0b7deef27d Get VS2013 compilation working again for Crashpad
f735d050c487 Port the util library to Linux
e956a8252fc1 Port the util library to Android
d5a759c900ae Update mini_chromium to 8e8d3cc9a245
d1aafe78ea46 Port the test library and crashpad_test_test to
             Linux/Android
b978b03fa188 Port most of crashpad_util_test to Linux/Android
c2814e251912 Don't throttle explicitly requested uploads
fd751f4708cc Correct StringToUnsignedInt[64]()
e7bd798af438 Update build/test and status documentation to reflect
             Android
e616638c9d87 Replace Rietveld with Gerrit in the developer documentation
47a830465f78 Port the minidump library to Android and ARM
88e3b6b02271 Omit platform-specific assembler source from builds as
             needed
96b9857aceb4 Fix the crashpad_minidump library for 32-bit ARM
c55e49c13d5c doc: Remove errant parenthesis
76ef9b5c2b00 win: Address failure-to-start-handler case for async
             startup
55ba6b67801b break; after handling --initial-client-data on command line
bb7d249d65a1 Partially port the crashpad_client library to Linux/Android
375082098deb mac: Fix tests on 10.12.1
c4cdec3d72a2 Handle non-crashing cases for server failure to start
b47bf6c250c6 Fix tests when running on Win10

Also update .GN files, and adapt Chrome side code for changes in API.
Only the first three files are modified here, the rest are unmodified
from upstream Crashpad repo.

This does not yet make handler startup asynchronous, or move it back to
chrome_elf. Those will be done in smaller followup CLs.

R=mark@chromium.org
TBR=rsesek
BUG= 660955 ,565063, 656800 , 655788 

Review-Url: https://codereview.chromium.org/2478633002
Cr-Commit-Position: refs/heads/master@{#429983}

[modify] https://crrev.com/7b9234c4b2a7f4f4fa84c80ecb22d41c54899f6a/build/secondary/third_party/crashpad/crashpad/util/BUILD.gn
[modify] https://crrev.com/7b9234c4b2a7f4f4fa84c80ecb22d41c54899f6a/components/crash/content/app/crashpad_mac.mm
[modify] https://crrev.com/7b9234c4b2a7f4f4fa84c80ecb22d41c54899f6a/components/crash/content/app/crashpad_win.cc
[modify] https://crrev.com/7b9234c4b2a7f4f4fa84c80ecb22d41c54899f6a/third_party/crashpad/README.chromium
[modify] https://crrev.com/7b9234c4b2a7f4f4fa84c80ecb22d41c54899f6a/third_party/crashpad/crashpad/DEPS
[modify] https://crrev.com/7b9234c4b2a7f4f4fa84c80ecb22d41c54899f6a/third_party/crashpad/crashpad/client/client.gyp
[modify] https://crrev.com/7b9234c4b2a7f4f4fa84c80ecb22d41c54899f6a/third_party/crashpad/crashpad/client/crashpad_client.h
[modify] https://crrev.com/7b9234c4b2a7f4f4fa84c80ecb22d41c54899f6a/third_party/crashpad/crashpad/client/crashpad_client_mac.cc
[modify] https://crrev.com/7b9234c4b2a7f4f4fa84c80ecb22d41c54899f6a/third_party/crashpad/crashpad/client/crashpad_client_win.cc
[modify] https://crrev.com/7b9234c4b2a7f4f4fa84c80ecb22d41c54899f6a/third_party/crashpad/crashpad/client/crashpad_client_win_test.cc
[modify] https://crrev.com/7b9234c4b2a7f4f4fa84c80ecb22d41c54899f6a/third_party/crashpad/crashpad/client/crashpad_info.cc
[modify] https://crrev.com/7b9234c4b2a7f4f4fa84c80ecb22d41c54899f6a/third_party/crashpad/crashpad/doc/developing.ad
[modify] https://crrev.com/7b9234c4b2a7f4f4fa84c80ecb22d41c54899f6a/third_party/crashpad/crashpad/doc/status.ad
[modify] https://crrev.com/7b9234c4b2a7f4f4fa84c80ecb22d41c54899f6a/third_party/crashpad/crashpad/handler/crash_report_upload_thread.cc
[modify] https://crrev.com/7b9234c4b2a7f4f4fa84c80ecb22d41c54899f6a/third_party/crashpad/crashpad/handler/crashpad_handler.ad
[modify] https://crrev.com/7b9234c4b2a7f4f4fa84c80ecb22d41c54899f6a/third_party/crashpad/crashpad/handler/handler.gyp
[modify] https://crrev.com/7b9234c4b2a7f4f4fa84c80ecb22d41c54899f6a/third_party/crashpad/crashpad/handler/handler_main.cc
[modify] https://crrev.com/7b9234c4b2a7f4f4fa84c80ecb22d41c54899f6a/third_party/crashpad/crashpad/handler/win/crash_other_program.cc
[modify] https://crrev.com/7b9234c4b2a7f4f4fa84c80ecb22d41c54899f6a/third_party/crashpad/crashpad/handler/win/crashy_test_program.cc
[modify] https://crrev.com/7b9234c4b2a7f4f4fa84c80ecb22d41c54899f6a/third_party/crashpad/crashpad/handler/win/crashy_test_z7_loader.cc
[add] https://crrev.com/7b9234c4b2a7f4f4fa84c80ecb22d41c54899f6a/third_party/crashpad/crashpad/handler/win/fake_handler_that_crashes_at_startup.cc
[modify] https://crrev.com/7b9234c4b2a7f4f4fa84c80ecb22d41c54899f6a/third_party/crashpad/crashpad/handler/win/hanging_program.cc
[modify] https://crrev.com/7b9234c4b2a7f4f4fa84c80ecb22d41c54899f6a/third_party/crashpad/crashpad/handler/win/self_destroying_test_program.cc
[modify] https://crrev.com/7b9234c4b2a7f4f4fa84c80ecb22d41c54899f6a/third_party/crashpad/crashpad/minidump/minidump_misc_info_writer.cc
[modify] https://crrev.com/7b9234c4b2a7f4f4fa84c80ecb22d41c54899f6a/third_party/crashpad/crashpad/snapshot/mac/mach_o_image_annotations_reader_test.cc
[modify] https://crrev.com/7b9234c4b2a7f4f4fa84c80ecb22d41c54899f6a/third_party/crashpad/crashpad/snapshot/mac/mach_o_image_reader.cc
[modify] https://crrev.com/7b9234c4b2a7f4f4fa84c80ecb22d41c54899f6a/third_party/crashpad/crashpad/snapshot/mac/mach_o_image_reader.h
[modify] https://crrev.com/7b9234c4b2a7f4f4fa84c80ecb22d41c54899f6a/third_party/crashpad/crashpad/snapshot/mac/process_types/crashpad_info.proctype
[modify] https://crrev.com/7b9234c4b2a7f4f4fa84c80ecb22d41c54899f6a/third_party/crashpad/crashpad/snapshot/module_snapshot.h
[modify] https://crrev.com/7b9234c4b2a7f4f4fa84c80ecb22d41c54899f6a/third_party/crashpad/crashpad/snapshot/win/crashpad_snapshot_test_crashing_child.cc
[modify] https://crrev.com/7b9234c4b2a7f4f4fa84c80ecb22d41c54899f6a/third_party/crashpad/crashpad/snapshot/win/crashpad_snapshot_test_dump_without_crashing.cc
[modify] https://crrev.com/7b9234c4b2a7f4f4fa84c80ecb22d41c54899f6a/third_party/crashpad/crashpad/snapshot/win/end_to_end_test.py
[modify] https://crrev.com/7b9234c4b2a7f4f4fa84c80ecb22d41c54899f6a/third_party/crashpad/crashpad/snapshot/win/exception_snapshot_win_test.cc
[modify] https://crrev.com/7b9234c4b2a7f4f4fa84c80ecb22d41c54899f6a/third_party/crashpad/crashpad/test/multiprocess_exec_posix.cc
[modify] https://crrev.com/7b9234c4b2a7f4f4fa84c80ecb22d41c54899f6a/third_party/crashpad/crashpad/test/multiprocess_exec_test_child.cc
[modify] https://crrev.com/7b9234c4b2a7f4f4fa84c80ecb22d41c54899f6a/third_party/crashpad/crashpad/test/multiprocess_posix_test.cc
[add] https://crrev.com/7b9234c4b2a7f4f4fa84c80ecb22d41c54899f6a/third_party/crashpad/crashpad/test/paths_linux.cc
[modify] https://crrev.com/7b9234c4b2a7f4f4fa84c80ecb22d41c54899f6a/third_party/crashpad/crashpad/test/paths_mac.cc
[modify] https://crrev.com/7b9234c4b2a7f4f4fa84c80ecb22d41c54899f6a/third_party/crashpad/crashpad/test/paths_win.cc
[modify] https://crrev.com/7b9234c4b2a7f4f4fa84c80ecb22d41c54899f6a/third_party/crashpad/crashpad/test/scoped_temp_dir_posix.cc
[modify] https://crrev.com/7b9234c4b2a7f4f4fa84c80ecb22d41c54899f6a/third_party/crashpad/crashpad/test/test.gyp
[modify] https://crrev.com/7b9234c4b2a7f4f4fa84c80ecb22d41c54899f6a/third_party/crashpad/crashpad/test/win/win_child_process.cc
[modify] https://crrev.com/7b9234c4b2a7f4f4fa84c80ecb22d41c54899f6a/third_party/crashpad/crashpad/tools/mac/run_with_crashpad.cc
[modify] https://crrev.com/7b9234c4b2a7f4f4fa84c80ecb22d41c54899f6a/third_party/crashpad/crashpad/util/file/file_writer.cc
[modify] https://crrev.com/7b9234c4b2a7f4f4fa84c80ecb22d41c54899f6a/third_party/crashpad/crashpad/util/misc/clock_test.cc
[modify] https://crrev.com/7b9234c4b2a7f4f4fa84c80ecb22d41c54899f6a/third_party/crashpad/crashpad/util/misc/metrics.cc
[modify] https://crrev.com/7b9234c4b2a7f4f4fa84c80ecb22d41c54899f6a/third_party/crashpad/crashpad/util/misc/uuid.cc
[modify] https://crrev.com/7b9234c4b2a7f4f4fa84c80ecb22d41c54899f6a/third_party/crashpad/crashpad/util/numeric/checked_address_range_test.cc
[modify] https://crrev.com/7b9234c4b2a7f4f4fa84c80ecb22d41c54899f6a/third_party/crashpad/crashpad/util/posix/close_multiple.cc
[modify] https://crrev.com/7b9234c4b2a7f4f4fa84c80ecb22d41c54899f6a/third_party/crashpad/crashpad/util/posix/drop_privileges.cc
[modify] https://crrev.com/7b9234c4b2a7f4f4fa84c80ecb22d41c54899f6a/third_party/crashpad/crashpad/util/posix/process_info.h
[modify] https://crrev.com/7b9234c4b2a7f4f4fa84c80ecb22d41c54899f6a/third_party/crashpad/crashpad/util/posix/process_info_test.cc
[modify] https://crrev.com/7b9234c4b2a7f4f4fa84c80ecb22d41c54899f6a/third_party/crashpad/crashpad/util/posix/symbolic_constants_posix.cc
[modify] https://crrev.com/7b9234c4b2a7f4f4fa84c80ecb22d41c54899f6a/third_party/crashpad/crashpad/util/posix/symbolic_constants_posix_test.cc
[modify] https://crrev.com/7b9234c4b2a7f4f4fa84c80ecb22d41c54899f6a/third_party/crashpad/crashpad/util/stdlib/string_number_conversion.cc
[modify] https://crrev.com/7b9234c4b2a7f4f4fa84c80ecb22d41c54899f6a/third_party/crashpad/crashpad/util/stdlib/string_number_conversion.h
[modify] https://crrev.com/7b9234c4b2a7f4f4fa84c80ecb22d41c54899f6a/third_party/crashpad/crashpad/util/string/split_string.cc
[modify] https://crrev.com/7b9234c4b2a7f4f4fa84c80ecb22d41c54899f6a/third_party/crashpad/crashpad/util/string/split_string.h
[modify] https://crrev.com/7b9234c4b2a7f4f4fa84c80ecb22d41c54899f6a/third_party/crashpad/crashpad/util/string/split_string_test.cc
[modify] https://crrev.com/7b9234c4b2a7f4f4fa84c80ecb22d41c54899f6a/third_party/crashpad/crashpad/util/thread/thread_log_messages.cc
[modify] https://crrev.com/7b9234c4b2a7f4f4fa84c80ecb22d41c54899f6a/third_party/crashpad/crashpad/util/util.gyp
[modify] https://crrev.com/7b9234c4b2a7f4f4fa84c80ecb22d41c54899f6a/third_party/crashpad/crashpad/util/util_test.gyp
[modify] https://crrev.com/7b9234c4b2a7f4f4fa84c80ecb22d41c54899f6a/third_party/crashpad/crashpad/util/win/exception_handler_server.cc
[modify] https://crrev.com/7b9234c4b2a7f4f4fa84c80ecb22d41c54899f6a/third_party/crashpad/crashpad/util/win/exception_handler_server.h
[modify] https://crrev.com/7b9234c4b2a7f4f4fa84c80ecb22d41c54899f6a/third_party/crashpad/crashpad/util/win/exception_handler_server_test.cc
[add] https://crrev.com/7b9234c4b2a7f4f4fa84c80ecb22d41c54899f6a/third_party/crashpad/crashpad/util/win/initial_client_data.cc
[add] https://crrev.com/7b9234c4b2a7f4f4fa84c80ecb22d41c54899f6a/third_party/crashpad/crashpad/util/win/initial_client_data.h
[add] https://crrev.com/7b9234c4b2a7f4f4fa84c80ecb22d41c54899f6a/third_party/crashpad/crashpad/util/win/initial_client_data_test.cc
[modify] https://crrev.com/7b9234c4b2a7f4f4fa84c80ecb22d41c54899f6a/third_party/crashpad/crashpad/util/win/registration_protocol_win.cc
[modify] https://crrev.com/7b9234c4b2a7f4f4fa84c80ecb22d41c54899f6a/third_party/crashpad/crashpad/util/win/registration_protocol_win.h
[modify] https://crrev.com/7b9234c4b2a7f4f4fa84c80ecb22d41c54899f6a/third_party/crashpad/crashpad/util/win/termination_codes.h

Comment 7 by scottmg@chromium.org, Nov 4 2016

Status: Fixed (was: Assigned)

Sign in to add a comment