Closed Bug 714338 Opened 10 years ago Closed 10 years ago

Matview changes required for signature summary

Categories

(Socorro :: Database, task)

x86
All
task
Not set
normal

Tracking

(Not tracked)

VERIFIED FIXED

People

(Reporter: espressive, Assigned: jberkus)

References

Details

Attachments

(2 files)

Target Milestone: --- → 2.4
Blocks: 711223
Blocks: 711224
Blocks: 711225
I will be testing requirements for implementing the above.  This implementation will also implement the solution for bug 702384 as well.
Blocks: 702384
The cpu architecture report will need to be implemented last, and may miss 2.4 due to some plumbing required.  We haven't previously done reports on cpu architecture, so that wasn't data we were rolling up anywhere.  Modifications to reports_clean and possibly other cron jobs will be required.
Schalk,

So as a draft I've added a stored procedure to crash-stats-dev which produces all of the various signature summaries.  Here's the API:

signature_summary (
   signature TEXT,
   report_type TEXT,
   days INT,
   product TEXT,
   versions ARRAY OF INT optional
)

signature
  the signature as text
report_type
  one of: products, os, process_type, uptime, flash_version
days
  number of days the report is to cover
product
  the product name
versions
  the product_version_id of the version or versions selected
  an array of INT, this can be passed using the array constructor:
  ARRAY[ #, #, # ]
  optional.  if not supplied, all reports for the product are searched

Examples:


select * from signature_summary('hang | ZwCreateFile','products',7,'Firefox');

select * from signature_summary('hang | ZwCreateFile','process_type',7,'Firefox',ARRAY[ 792 ]);

select * from signature_summary('hang | ZwCreateFile','os',14,'Firefox',ARRAY[ 792, 798, 794, 800 ]);

Obviously, this is a prototype; a final version should really be implemented as a middleware API rather than a stored procedure.  Check the attached code as a model for the python code which would be needed.
You'll notice a couple of things here.

1) I chose not to create more matviews, and am instead relying on some new indexes on reports_clean.

2) This replaces *all* signature summaries, including the ones currently served by matviews, such as products and oses.
Target Milestone: 2.4 → 2.4.1
This is deployed on crash-stats-dev.

QA: you can test when Brandon's middleware work is done.  In the short term, you can verify that signature summary on crash-stats-dev will be broken.
Status: NEW → RESOLVED
Closed: 10 years ago
Resolution: --- → FIXED
reopening tracker - a dependent bug 711223 has not landed.
Status: RESOLVED → REOPENED
Resolution: FIXED → ---
reclosing; dependency was false.
Status: REOPENED → RESOLVED
Closed: 10 years ago10 years ago
Resolution: --- → FIXED
(In reply to [:jberkus] Josh Berkus from comment #7)
> reclosing; dependency was false.

Indeed, but as we discussed in IRC, we should at least remove it as a dependency, then, so doing so now.
No longer blocks: 711223
Attached image qa - verified
Bumping to QA verified. Automation is still passing.

http://qa-selenium.mv.mozilla.com:8080/view/Socorro/job/socorro.stage.saucelabs/217/
Status: RESOLVED → VERIFIED
Hardware: x86 → All
Hardware: All → x86
You need to log in before you can comment on or make changes to this bug.