0
Commit Graph

6 Commits

Author SHA1 Message Date
Nathan Memmott
4aff5048b7 sql: Don't DCHECK sqlite codes aren't kUnusedChrome
The sqlite codes that get mapped to kUnusedChrome can happen due to
sqlite database corruption.

Bug: 343808334
Change-Id: I229dc6d33c98cafecaedaf840f1d619ee3e98f5e
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5609872
Commit-Queue: Nathan Memmott <memmott@chromium.org>
Reviewed-by: Evan Stade <estade@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1314175}
2024-06-12 19:27:51 +00:00
Peter Boström
6baf523d51 CHECK that SQLite result codes are present in map
This replaces a NOTREACHED() that's about to turn fatal.

Bug: 40580068
Change-Id: I36a921a562ea7bc7bffc283aec7a484c2919f595
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5598763
Code-Coverage: findit-for-me@appspot.gserviceaccount.com <findit-for-me@appspot.gserviceaccount.com>
Reviewed-by: Evan Stade <estade@chromium.org>
Commit-Queue: Evan Stade <estade@chromium.org>
Auto-Submit: Peter Boström <pbos@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1310976}
2024-06-05 23:40:05 +00:00
Takuto Ikuta
2eb6134247 sql: apply clang-tidy's misc-include-cleaner
Bug: 336474469
Change-Id: I3378c04b5b88c202885e412bbe2190af6824433f
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5504232
Commit-Queue: Takuto Ikuta <tikuta@chromium.org>
Reviewed-by: Evan Stade <estade@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1299145}
2024-05-10 09:05:35 +00:00
Avi Drissman
69b874fee0 Update copyright headers in sql/, storage/
The methodology used to generate this CL is documented in
https://crbug.com/1098010#c95.

No-Try: true
Bug: 1098010
Change-Id: I68bb81a4dcae37f944f4d8cd39d82ed540364615
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3899461
Reviewed-by: Mark Mentovai <mark@chromium.org>
Commit-Queue: Mark Mentovai <mark@chromium.org>
Auto-Submit: Avi Drissman <avi@chromium.org>
Owners-Override: Avi Drissman <avi@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1047607}
2022-09-15 19:11:14 +00:00
Victor Costan
f176d2453a sql: Integrate SqliteResultCode with sql::Statement.
Bug: 1308290
Change-Id: Idec3754173581b72452bc0e0ca4b0aab82562bef
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3538833
Auto-Submit: Victor Costan <pwnall@chromium.org>
Reviewed-by: Austin Sullivan <asully@chromium.org>
Commit-Queue: Austin Sullivan <asully@chromium.org>
Cr-Commit-Position: refs/heads/main@{#983682}
2022-03-22 05:31:22 +00:00
Victor Costan
ab7a24586c sql: Introduce strongly typed enums for SQLite result codes.
This CL introduces the following strongly typed enums, which are meant
to replace raw integers in Chrome's layer on top of SQLite.

* SqliteResultCode represents all result codes.
* SqliteErrorCode represent a result code that's known to be an error.

This CL integrates each new type in one place, to give an idea of what
our code will look like once we adopt these new types.

* SqliteResultCode is integrated in
  Database::ExecuteAndReturnResultCode().
* SqliteErrorCode is integrated in Database::OnSqliteError().

The new enums are declared in //sql/sqlite_result_code.h, together with
helper functions for converting raw integers returned by the SQLite API.
The values for the new enums are defined in a separate header,
//sql/sqlite_result_code_values.h. This is intended to help readability,
as sqlite_result_code.h has everything developers need to start using
the types, while the boilerplate is relegated to
sqlite_result_code_values.h.

Last, this CL moves the SqliteLoggedResultCode logic from
error_metrics.{h,cc} into the newly introduced files. This is done in
part because this type is also a strongly typed replacement for SQLite's
result codes, and in part because we want all the SQLite result code
conversion logic to share one mapping table.

Bug: 1308290
Change-Id: I580ae4649cabccaab74c1d4749b5f349cf42f047
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3538180
Auto-Submit: Victor Costan <pwnall@chromium.org>
Reviewed-by: Austin Sullivan <asully@chromium.org>
Commit-Queue: Austin Sullivan <asully@chromium.org>
Cr-Commit-Position: refs/heads/main@{#983543}
2022-03-21 23:06:08 +00:00