Dmitriy Kovalenko
596ae94fb0
Classify SQLite corruption using typed error codes ( #49710 )
...
## What changed
Preserve the underlying error in `LocalStateDbStartupError` and use its error chain to decide whether CLI startup failures qualify for automatic database backup and recovery.
Replace corruption checks against error-message text with SQLite result-code classification, including SQLx extended result codes and directly wrapped `SqliteError` values.
## Testing
Update the embedded startup corruption test to verify that the startup error retains a detectable SQLite corruption cause and the failed database path.
GitOrigin-RevId: 6e8ecd0ee67f3c239183ddea3fc75c4e4cd5744a
2026-09-30 19:00:00 +00:00
..
2026-09-28 20:59:25 +00:00
2026-09-30 07:15:14 +00:00
2026-09-22 16:16:15 +00:00
2026-09-30 03:33:19 +00:00
2026-09-22 16:23:59 +00:00
2026-09-30 17:06:14 +00:00
2026-09-30 18:29:46 +00:00
2026-09-29 00:40:54 +00:00
2026-09-29 00:40:54 +00:00
2026-09-11 17:43:36 +00:00
2026-09-29 23:09:32 +00:00
2026-09-27 18:09:34 +00:00
2026-09-22 16:06:30 +00:00
2026-09-29 23:09:32 +00:00
2026-09-18 22:40:37 +00:00
2026-08-29 06:05:28 +00:00
2026-09-30 07:15:14 +00:00
2026-09-30 07:15:14 +00:00
2026-09-30 10:21:00 +00:00
2026-09-28 22:20:29 +00:00
2026-09-29 20:46:44 +00:00
2026-09-29 02:37:23 +00:00
2026-09-19 19:21:35 +00:00
2026-09-03 01:46:37 +00:00
2026-09-19 19:14:11 +00:00
2026-09-20 00:06:25 +00:00
2026-09-30 07:15:14 +00:00
2026-09-29 03:24:14 +00:00
2026-09-20 16:16:46 +00:00
2026-09-28 22:20:29 +00:00
2026-09-19 17:46:43 +00:00
2026-09-24 17:55:29 +00:00
2026-09-23 01:20:29 +00:00
2026-09-23 15:05:59 +00:00
2026-09-29 02:37:23 +00:00
2026-09-30 10:21:00 +00:00
2026-09-28 00:53:05 +00:00
2026-09-03 16:21:10 +00:00
2026-09-20 18:26:14 +00:00
2026-09-22 16:23:59 +00:00
2026-09-27 05:29:53 +00:00
2026-09-07 20:25:30 +00:00
2026-09-16 01:50:27 +00:00
2026-09-22 22:47:12 +00:00
2026-09-30 07:15:14 +00:00
2026-09-19 20:24:41 +00:00
2026-09-17 04:53:51 +00:00
2026-09-30 11:58:03 +00:00
2026-09-29 16:00:05 +00:00
2026-08-26 21:39:05 +00:00
2026-09-28 22:20:29 +00:00
2026-09-28 22:20:29 +00:00
2026-09-18 22:40:37 +00:00
2026-09-18 22:40:37 +00:00
2026-09-14 15:30:22 +00:00
2026-09-22 16:23:59 +00:00
2026-09-02 21:50:51 +00:00
2026-09-29 00:17:56 +00:00
2026-09-17 02:46:49 +00:00
2026-09-29 00:40:54 +00:00
2026-09-21 03:38:46 +00:00
2026-09-04 20:38:08 +00:00
2026-09-25 15:15:56 +00:00
2026-09-20 16:52:02 +00:00
2026-09-22 16:23:59 +00:00
2026-09-03 00:45:48 +00:00
2026-09-29 04:13:14 +00:00
2026-09-29 04:13:14 +00:00
2026-09-08 19:06:42 +00:00
2026-09-25 20:46:05 +00:00
2026-09-20 00:04:04 +00:00
2026-09-22 16:07:38 +00:00
2026-09-25 20:46:05 +00:00
2026-09-23 00:49:19 +00:00
2026-09-26 17:31:48 +00:00
2026-09-17 05:26:45 +00:00
2026-09-04 03:30:21 +00:00
2026-09-04 03:30:21 +00:00
2026-09-30 14:37:56 +00:00
2026-09-19 20:24:20 +00:00
2026-08-31 21:36:49 +00:00
2026-09-21 19:55:40 +00:00
2026-09-21 19:55:40 +00:00
2026-09-21 19:55:40 +00:00
2026-09-21 22:23:26 +00:00
2026-09-26 21:57:55 +00:00
2026-09-29 23:09:32 +00:00
2026-09-19 00:14:40 +00:00
2026-09-19 00:14:40 +00:00
2026-09-03 16:21:10 +00:00
2026-09-03 16:21:10 +00:00
2026-09-10 00:57:33 +00:00
2026-09-20 00:06:25 +00:00
2026-09-26 21:58:39 +00:00
2026-09-24 17:21:45 +00:00
2026-09-24 17:55:29 +00:00
2026-09-24 17:55:29 +00:00
2026-09-19 20:24:41 +00:00
2026-09-29 02:37:23 +00:00
2026-09-29 02:37:23 +00:00
2026-09-22 17:58:37 +00:00
2026-09-30 07:15:14 +00:00
2026-09-30 19:00:00 +00:00
2026-08-24 21:39:48 +00:00
2026-09-26 15:48:27 +00:00
2026-09-30 01:58:03 +00:00
2026-09-05 20:39:46 +00:00
2026-09-24 17:43:15 +00:00
2026-09-11 00:59:27 +00:00
2026-09-24 17:55:29 +00:00
2026-09-30 10:21:00 +00:00
2026-09-27 22:14:21 +00:00
2026-09-30 10:21:00 +00:00
2026-09-27 22:14:21 +00:00
2026-09-21 03:38:46 +00:00
2026-08-27 23:10:10 +00:00
2026-09-22 18:17:39 +00:00
2026-09-20 00:04:04 +00:00
2026-08-17 17:10:16 +00:00
2026-09-20 02:59:37 +00:00
2026-09-07 00:56:16 +00:00
2026-09-07 00:56:16 +00:00
2026-09-19 19:14:11 +00:00
2026-09-19 19:14:11 +00:00
2026-09-29 00:40:54 +00:00
2026-09-30 03:33:19 +00:00
2026-09-30 03:33:19 +00:00
2026-09-29 04:13:14 +00:00
2026-09-29 04:13:14 +00:00
2026-09-29 04:13:14 +00:00
2026-09-19 19:21:35 +00:00
2026-09-22 16:35:30 +00:00
2026-09-02 22:45:19 +00:00
2026-09-29 04:17:32 +00:00
2026-09-20 16:16:46 +00:00
2026-09-16 22:14:53 +00:00
2026-09-16 22:14:53 +00:00
2026-09-17 14:47:42 +00:00
2026-09-07 00:56:16 +00:00
2026-09-30 13:16:08 +00:00
2026-09-04 20:38:08 +00:00
2026-08-25 17:17:01 +00:00
2026-08-17 22:44:37 +00:00
2026-09-17 02:46:49 +00:00
2026-09-07 04:59:12 +00:00
2026-09-29 04:13:14 +00:00
2026-09-29 04:13:14 +00:00
2026-09-16 00:21:49 +00:00
2026-08-17 17:10:16 +00:00
2026-09-20 20:20:00 +00:00
2026-09-29 16:00:05 +00:00
2026-09-26 18:59:50 +00:00
2026-09-26 18:59:50 +00:00
2026-09-26 22:50:16 +00:00
2026-09-20 03:02:02 +00:00
2026-09-29 23:09:32 +00:00
2026-09-29 23:09:32 +00:00
2026-09-30 19:00:00 +00:00
2026-09-20 00:06:25 +00:00
2026-09-26 23:17:41 +00:00
2026-08-14 20:38:52 +00:00
2026-09-29 20:46:44 +00:00
2026-09-22 03:20:04 +00:00
2026-09-26 18:59:50 +00:00
2026-09-20 03:02:02 +00:00
2026-09-20 03:02:02 +00:00
2026-09-20 16:16:46 +00:00
2026-09-20 03:02:25 +00:00
2026-09-28 20:59:25 +00:00
2026-09-27 17:59:57 +00:00
2026-09-27 17:59:57 +00:00
2026-09-10 22:55:04 +00:00
2026-08-24 02:46:56 +00:00
2026-09-03 06:02:25 +00:00
2026-09-23 00:49:19 +00:00
2026-09-21 17:28:14 +00:00
2026-09-19 20:22:48 +00:00
2026-09-26 21:58:17 +00:00
2026-09-19 17:46:43 +00:00
2026-09-23 01:20:29 +00:00
2026-08-13 00:30:08 +00:00
2026-09-11 23:28:38 +00:00
2026-09-18 22:51:10 +00:00
2026-09-20 17:58:19 +00:00
2026-09-19 19:11:54 +00:00
2026-09-19 19:21:35 +00:00
2026-09-11 16:20:50 +00:00
2026-09-11 16:20:50 +00:00
2026-09-20 00:04:04 +00:00
2026-09-19 20:24:20 +00:00
2026-09-19 20:24:20 +00:00
2026-09-28 22:40:35 +00:00
2026-09-20 00:04:04 +00:00
2026-09-27 18:09:34 +00:00
2026-09-29 00:40:54 +00:00
2026-09-11 17:43:36 +00:00
2026-09-26 18:59:50 +00:00
2026-09-28 00:53:05 +00:00
2026-09-26 04:17:41 +00:00
2026-09-19 20:24:20 +00:00
2026-09-29 04:13:14 +00:00
2026-09-20 00:04:04 +00:00
2026-09-16 03:43:59 +00:00
2026-09-20 00:04:04 +00:00
2026-09-19 17:03:26 +00:00
2026-09-16 03:43:59 +00:00
2026-08-30 00:42:00 +00:00
2026-09-17 18:20:28 +00:00
2026-09-17 18:20:28 +00:00
2026-09-08 23:37:26 +00:00
2026-09-05 18:06:26 +00:00
2026-09-26 23:17:41 +00:00
2026-09-19 20:22:48 +00:00
2026-09-19 20:24:20 +00:00