Closed Bug 412788 Opened 17 years ago Closed 17 years ago

add a way for crash report server to tell client to stop sending reports

Categories

(Toolkit :: Crash Reporting, defect, P2)

defect

Tracking

()

RESOLVED FIXED

People

(Reporter: ted, Assigned: ted)

Details

Attachments

(2 files, 2 obsolete files)

We're going to kick ourselves if we don't get this into Firefox 3.  When we eventually end of life the 1.9 branch, we should have a way for the crash reports server to tell the client to stop sending reports.  I don't know if we need to do this on a per-Build ID basis, or if just per-branch is enough, but either should be possible.  The client already gets a list of key=value parameters from the server, so we'll just make it look for a new one and save that value out, and then it can know whether to submit a report or not.  We could do this easily without changing the crashreporter GUI, or we could just disable everything in the UI except quit/restart, and have the status text say that no report will be submitted.
Flags: blocking1.9?
Filed bug 412790 for the server side, that's not as critical, as long as we test the client functionality and verify that it works.
I'd argue that it should have a way to point the user to a URL with migration information.
We already have the update service and whatnot.  That's overcomplicated.
Ted, what's the use-case here: "this build is old and we don't care about reports from it any more"? or "our server is overloaded, please throttle"?
"This build is old".  I don't see any point in trying to throttle clients, our collector never gets overloaded really.  We could just drop the reports after collecting them, but that's sort of mean to users, since it would look like we were processing it, but we weren't.  Being able to stop clients in unsupported releases from submitting reports would help keep load on the processor down.
Attached patch WIP patch (obsolete) (deleted) — Splinter Review
Needs a string added, but that would conflict with my other patches, so I didn't do that quite yet.  This isn't great, it will be better once I fix bug 411438, since you'll still get a restart button on the error dialog then.  Suggestions wanted for the error text, obviously "Your build is too old" is not quite user friendly.
Assignee: nobody → ted.mielczarek
Status: NEW → ASSIGNED
Oh, it also needs to delete the dump file before quitting.
Attached patch WIP patch (obsolete) (deleted) — Splinter Review
Deletes dump, still needs string.
Attachment #298011 - Attachment is obsolete: true
Attached patch string [checked in] (deleted) — Splinter Review
Just the string, want to get this in for the string freeze.  Comments on the text welcome, but get them in quick.  ;-)
Attachment #298379 - Flags: review?(dcamp)
Attachment #298379 - Flags: review?(dcamp) → review+
Comment on attachment 298379 [details] [diff] [review]
string [checked in]

Looking to land this string prior to string freeze so I can get the code in for b3.
Attachment #298379 - Flags: approval1.9?
Comment on attachment 298379 [details] [diff] [review]
string [checked in]

>+ErrorEndOfLife=The version of %s you are using is no longer supported.  Crash reports are no longer being accepted for this version.  Please consider upgrading to a supported version.

Can the extra spaces be dropped, please?
Attachment #298379 - Flags: approval1.9? → approval1.9+
Comment on attachment 298379 [details] [diff] [review]
string [checked in]

Checked in, with one space after each period.  When did I get so old that things I learned in high school are no longer correct?  :-(
Attachment #298379 - Attachment description: string → string [checked in]
Flags: blocking1.9? → blocking1.9+
Priority: -- → P2
Attached patch handle end-of-lifing (deleted) — Splinter Review
This implements the functionality.  The server can send "StopSendingReportsFor=VERSION" in the POST response, and the client will store a file in the Crash Reports directory named "EndOfLifeVERSION".  If the client sees that file when it is called to submit a report for that version, it will display the error screen with the above string instead.
Attachment #298012 - Attachment is obsolete: true
Attachment #298608 - Flags: review?(benjamin)
Attachment #298608 - Flags: review?(benjamin) → review+
Checked in.
Status: ASSIGNED → RESOLVED
Closed: 17 years ago
Resolution: --- → FIXED
(In reply to comment #12)
> (From update of attachment 298379 [details] [diff] [review])
> Checked in, with one space after each period.  When did I get so old that
> things I learned in high school are no longer correct?  :-(

According to Wikipedia, it's a complicated situation, but in America it changed sometime in the mid-90's: http://en.wikipedia.org/wiki/French_spacing
hi ted, how can we test this?  is there a testcase you can provide?
Tony: you can set the environment variable MOZ_CRASHREPORTER_URL=http://mavra.perilith.com/~luser/testsubmit.pl , that's a test CGI I have that will tell your client to stop sending reports for its current version.  If you set that env var, then crash once and submit the report, then crash again, the crash reporter should give you the end of life message.  Note that submitting your report to that CGI won't actually get it processed.  Once you're done testing that, you can go to your Crash Reports directory and remove the EndOfLifeVERSION file to reset it.  (EndOfLife3.0b3 assuming that's what you're testing.)
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: