New issue
Advanced search Search tips

Issue 604925 link

Starred by 1 user

Issue metadata

Status: Assigned
Owner:
EstimatedDays: ----
NextAction: ----
OS: All
Pri: 3
Type: Bug



Sign in to add a comment

Upload SQLITE_ERROR diagnostics from the fleet.

Project Member Reported by sh...@chromium.org, Apr 19 2016

Issue description

Sqlite.Error.* is showing a lot of SQLITE_ERROR results for some databases.  In general, SQLITE_ERROR should not happen in production code.  My experience is that SQLITE_ERROR either means an invalid statement has been released, or a schema migration went awry.

sql::Connection::ReportDiagnosticInfo() collects and uploads some info via the crash server.  In case of SQLITE_ERROR, it uploads the statement text and a copy of the schema.

When uploading similar data for Thumbnails (or perhaps Favicons), I found that there were unexpectedly sharp edge cases in the schema migration, with two or three of the cases being fixable and covering 2/3 or so of the cases.  The other third were mostly long tail, things like obviously-corrupt statements.
 

Comment 1 by sh...@chromium.org, Apr 19 2016

ReportDiagnosticInfo() is rate-limited, it will only make one report per profile database.  So this should not result in an avalanche of reports.  Even so, it may make sense to gate at 5% as thumbnail_database.cc does, just in case.

It may also make sense to gate to canary/dev first, until all of the low-hanging fruit is fixed, then beta, then stable.  So this might make sense as a finch experiment to control channel, and will probably require two release cycles to execute, unless the release managers are unusually benevolent in terms of allowing merges to the beta branch.

Hmm, it may also make sense to roll things out stepwise by database, since fixes will probably not be generic across database clients.

Comment 2 by sh...@chromium.org, Jun 21 2017

Labels: ShessReview

Comment 3 by jrobb...@google.com, Sep 21 2017

Owner: pwnall@chromium.org

Sign in to add a comment