Breakpad/Design/Database

From MozillaWiki
< Breakpad‎ | Design
Revision as of 16:59, 16 March 2007 by Morgamic (talk | contribs)
Jump to navigation Jump to search

« back to Breakpad design page

Breakpad Database

  • Use MySQL, like everything else (we should revisit this, as it may NOT be the right choice --morgamic)
    • Would we need to make use of stored procedures or views?
    • Would we need to do any sort of partitioning?
    • Does MySQL scale as well as PgSQL for arbitrarily large data sets?
    • Any other reason why MySQL would hang us up (table type/storage engine problems)?
  • Define schema that works well with current query/reporting needs
    • [need to dig up all common queries - jay]
  • The schema now accounts for the following kinds of information
    • individual minidump records
    • product/OS/buildid information
    • control information used to "register" an incoming minidump and monitor/track/control its progress though all the stages from being transfered from the client until it is fully collected and processed on the server and available for reporting and analysis.
  • using the same database and schema for the minidump data and also for control over the processing of the minidumps has created problems in the past. when coruption is introduced, database performance problems crop up, or maintenance is required to manage the collection of minidumps, the processing of incoming minidumps is hindered and we start into a downward spiral of compounding problems. We should do some thinking to see if there are ways to improve on the existing design.