a94edebf00
fix(s3tables): keep the data under a deleted namespace ( #12276 )
...
* fix(s3tables): keep the data under a deleted namespace
A rename leaves the source table directory holding data the renamed table
still points at, and DeleteNamespace removed it recursively. The delete now
keeps the directory, minus its catalog record, when files remain under it;
CreateNamespace can take it back.
* fix(s3tables): keep hidden-directory data, report name takeover as 409
- DeleteNamespace also looks for files under hidden directories, since a
table location may sit under one.
- CreateNamespace answers 409 when a file takes the name during the
take-back of a kept directory.
* s3tables: a vanished leftover holds nothing to keep
A bare directory removed between the namespace listing and the walk
made dirHoldsFiles answer its ListEntries NotFound, and the delete
reported that miss as a 404 or 500 on a live namespace. Skip the gone
directory instead: whatever it held is already gone, so it cannot keep
the namespace.
Generated with [Devin](https://devin.ai )
Co-Authored-By: Devin <158243242+devin-ai-integration[bot]@users.noreply.github.com>
* s3tables: a delete's gone entry is a conflict, not a success
The filer answers a precondition delete on an entry that is already gone with FailedPrecondition carrying the not-found text, which DoRemoveRequest reads as a completed delete -- DeleteNamespace answered 200 for a delete that never ran. deleteDirectoryIfMatches now calls DeleteEntry directly, keeping the FailedPrecondition-to-conflict mapping and refusing a response-level error. keepAsLeftover likewise reports a directory removed since the scan as ErrConcurrentUpdate, so the handler answers 409 rather than 500.
---------
Co-authored-by: Devin <158243242+devin-ai-integration[bot]@users.noreply.github.com>
Co-authored-by: Chris Lu <chris.lu@gmail.com >
2026-10-31 05:27:58 -07:00
..
2026-10-21 13:10:49 -07:00
2026-10-28 08:15:42 -07:00
2026-10-23 03:58:06 -07:00
2026-08-21 23:42:26 -07:00
2026-04-20 12:04:41 -07:00
2026-10-24 02:04:39 -07:00
2026-10-23 03:58:06 -07:00
2026-09-02 11:35:19 -07:00
2026-10-29 01:36:16 -07:00
2026-10-29 16:10:36 -07:00
2026-10-23 03:19:41 -07:00
2026-10-31 05:27:58 -07:00
2026-10-30 01:27:23 -07:00
2026-07-02 21:11:41 -07:00
2026-10-21 20:33:08 -07:00
2026-10-21 20:33:08 -07:00
2026-10-21 20:33:08 -07:00
2026-10-27 00:36:53 -07:00
2026-09-27 07:03:01 +08:00
2026-08-25 15:31:32 -07:00
2026-10-21 16:50:34 -07:00
2026-09-28 07:17:58 +08:00
2026-07-29 10:30:30 -07:00
2026-07-29 10:30:30 -07:00
2026-07-29 10:30:30 -07:00
2026-10-10 09:34:11 +08:00
2026-09-11 10:42:19 -07:00
2026-09-30 20:45:47 +08:00
2026-01-12 10:45:24 -08:00
2026-10-17 15:25:00 -07:00
2026-10-31 05:19:17 -07:00
2026-10-21 14:08:33 -07:00
2026-05-28 18:10:24 -07:00
2026-07-10 12:17:35 -07:00
2026-07-09 02:34:13 -07:00
2026-07-02 09:14:54 -07:00
2026-09-28 07:17:58 +08:00
2026-06-20 08:28:40 -07:00
2026-10-23 03:58:06 -07:00
2026-06-14 13:55:11 -07:00
2026-10-19 18:32:44 -07:00
2026-10-07 21:02:38 +08:00
2026-10-23 03:58:06 -07:00
2026-10-10 10:11:24 +08:00
2026-02-16 13:59:13 -08:00
2026-09-17 23:50:16 -07:00
2026-09-17 23:50:16 -07:00
2026-10-19 15:55:18 -07:00
2026-10-15 21:53:16 -07:00
2026-10-26 11:52:56 -07:00
2026-08-04 16:00:04 -07:00
2026-10-21 14:49:36 -07:00
2026-08-09 00:00:19 -07:00
2026-08-09 00:00:19 -07:00
2025-08-11 10:31:01 -07:00
2026-10-04 01:14:15 +08:00
2026-10-09 10:01:28 +08:00
2026-10-22 18:38:33 -07:00
2026-10-16 21:10:38 -07:00
2026-06-11 21:56:16 -07:00
2026-07-05 20:19:20 -07:00
2026-07-05 20:19:20 -07:00
2026-05-01 01:14:15 -07:00
2026-10-25 12:02:19 -07:00
2026-10-29 19:02:23 -07:00
2026-10-28 23:01:48 -07:00
2026-07-23 17:44:02 -07:00
2026-10-12 02:41:28 -07:00
2026-10-31 05:15:47 -07:00
2026-10-31 05:15:47 -07:00
2026-07-23 17:44:02 -07:00
2026-10-29 19:02:23 -07:00
2026-08-28 14:30:21 -07:00
2026-08-27 22:30:53 -07:00
2026-10-28 14:35:39 -07:00
2026-10-23 00:46:10 -07:00
2026-08-08 21:24:30 -07:00
2026-09-30 20:45:47 +08:00
2026-09-28 06:58:44 +08:00
2026-05-19 13:03:30 -07:00
2026-02-19 22:52:05 -08:00
2026-10-10 23:44:09 +08:00
2026-06-09 00:48:38 -07:00
2024-07-04 11:00:41 -07:00
2026-09-15 13:09:07 -07:00
2026-09-15 13:09:07 -07:00
2026-10-21 16:50:34 -07:00
2026-10-21 16:50:34 -07:00
2026-10-27 13:07:05 -07:00
2026-10-27 13:07:05 -07:00
2026-10-01 01:10:38 +08:00
2026-07-07 12:36:47 -07:00
2026-09-17 23:50:16 -07:00
2026-10-26 11:52:15 -07:00
2026-10-21 16:50:34 -07:00
2025-11-13 16:10:46 -08:00
2026-10-16 19:48:32 -07:00
2026-09-17 23:50:16 -07:00
2026-10-16 19:48:32 -07:00
2025-08-30 11:15:48 -07:00
2026-09-17 23:50:16 -07:00
2025-11-13 16:10:46 -08:00
2026-10-24 07:04:01 -07:00
2026-04-03 16:04:27 -07:00
2025-11-18 23:18:35 -08:00
2026-05-04 19:14:41 -07:00
2026-10-10 10:59:36 +08:00
2026-04-29 10:06:51 -07:00
2026-04-26 16:31:42 -07:00
2026-05-04 19:21:41 -07:00
2025-11-18 23:18:35 -08:00
2026-07-23 17:44:02 -07:00
2025-10-23 20:10:12 -07:00
2025-11-18 23:18:35 -08:00
2025-12-23 14:48:50 -08:00
2026-05-04 19:14:41 -07:00
2026-05-04 19:14:41 -07:00
2026-10-05 09:13:19 +08:00
2026-10-05 09:13:19 +08:00
2026-10-28 14:45:23 -07:00
2026-09-20 23:34:57 -07:00
2025-12-30 12:40:59 -08:00
2026-07-02 21:11:34 -07:00
2026-05-19 17:34:51 -07:00
2026-07-02 21:11:34 -07:00
2026-10-31 05:11:42 -07:00
2025-10-29 13:43:27 -07:00
2026-10-31 05:11:42 -07:00
2026-10-27 09:13:04 -07:00
2026-10-17 15:25:56 -07:00
2026-10-26 13:38:36 -07:00
2026-10-31 05:04:56 -07:00
2026-10-07 21:02:38 +08:00
2026-02-07 13:27:47 -08:00
2026-10-31 05:04:56 -07:00
2026-08-21 23:42:26 -07:00
2026-09-05 12:13:37 -07:00
2026-09-05 12:13:37 -07:00
2026-07-02 21:11:34 -07:00
2025-08-21 08:28:07 -07:00
2026-10-27 13:07:05 -07:00
2026-07-02 21:11:41 -07:00
2026-10-22 18:40:30 -07:00
2026-02-12 23:11:41 -08:00
2026-07-26 00:52:22 -07:00
2026-10-05 09:13:19 +08:00
2026-10-27 13:07:05 -07:00
2026-10-16 19:50:36 -07:00
2026-08-24 00:52:01 -07:00
2026-09-11 22:17:30 -07:00
2026-09-15 13:09:07 -07:00
2026-08-19 20:09:23 -07:00
2026-10-24 07:04:01 -07:00
2026-10-27 13:07:05 -07:00
2026-09-05 10:16:17 -07:00
2026-09-04 23:12:27 -07:00
2026-06-16 16:29:30 -07:00
2026-06-16 16:29:30 -07:00
2026-04-03 16:04:27 -07:00
2026-10-28 14:35:39 -07:00
2026-10-09 12:43:04 +08:00
2026-10-09 12:43:04 +08:00
2026-10-28 14:35:39 -07:00
2025-10-24 01:45:22 -07:00
2026-10-21 20:06:30 -07:00
2026-09-29 11:51:39 +08:00
2026-09-30 20:45:47 +08:00
2026-10-20 17:41:37 -07:00
2026-10-23 17:08:49 -07:00
2026-10-07 21:02:38 +08:00
2026-10-23 17:08:49 -07:00
2026-10-10 10:59:36 +08:00
2026-09-16 20:34:06 -07:00
2026-08-28 16:32:30 -07:00
2026-10-17 21:36:39 -07:00
2026-10-27 13:07:05 -07:00
2026-10-07 21:02:38 +08:00
2026-09-30 20:45:47 +08:00
2026-10-21 20:33:08 -07:00
2026-10-23 03:58:06 -07:00
2026-10-23 03:58:06 -07:00
2026-10-23 03:58:06 -07:00
2026-02-07 13:27:47 -08:00
2026-09-08 15:09:31 -07:00
2026-10-01 23:12:23 +08:00
2026-10-28 14:35:39 -07:00
2026-01-07 13:06:08 -08:00
2026-09-26 11:58:23 +08:00
2026-08-24 16:14:52 -07:00
2026-10-31 05:10:50 -07:00
2026-06-11 21:56:16 -07:00
2026-04-26 16:31:42 -07:00
2026-08-28 16:12:09 -07:00
2026-01-22 16:56:35 -08:00
2026-10-28 08:07:36 -07:00
2026-10-17 21:36:39 -07:00
2026-10-21 20:02:04 -07:00
2026-10-21 14:08:33 -07:00
2026-10-21 20:02:04 -07:00
2026-10-25 12:02:19 -07:00
2026-07-15 02:31:51 -07:00
2026-10-28 08:07:36 -07:00
2026-10-01 01:11:19 +08:00
2026-10-28 14:35:39 -07:00
2026-10-12 02:49:55 -07:00
2026-10-20 23:43:30 -07:00
2026-10-05 18:22:16 +08:00
2026-05-10 12:08:06 -07:00
2026-10-21 13:46:11 -07:00
2026-10-06 18:05:15 +08:00
2026-05-10 13:34:25 -07:00
2026-08-19 20:07:57 -07:00
2026-10-10 10:59:36 +08:00
2026-10-21 14:15:04 -07:00
2026-06-22 22:19:24 -07:00
2026-10-27 09:13:04 -07:00
2026-08-05 20:29:28 -07:00
2026-10-24 07:06:20 -07:00
2026-10-21 13:46:11 -07:00
2026-10-10 10:59:36 +08:00
2026-10-28 15:49:37 -07:00
2026-10-29 11:46:25 -07:00
2026-08-28 14:30:21 -07:00
2026-10-28 14:35:39 -07:00
2026-10-09 12:43:04 +08:00
2026-10-16 21:07:05 -07:00
2026-10-28 14:35:39 -07:00
2026-10-17 22:30:32 -07:00
2026-10-07 20:53:39 +08:00
2026-10-19 04:35:23 -07:00
2026-10-21 14:03:02 -07:00
2026-09-28 06:58:44 +08:00
2026-10-22 09:31:20 -07:00
2026-10-31 05:15:47 -07:00
2026-10-31 05:15:47 -07:00
2026-10-10 22:36:43 +08:00
2026-10-31 05:15:47 -07:00
2026-10-31 05:15:47 -07:00
2026-10-31 05:08:01 -07:00
2026-10-31 05:19:17 -07:00
2026-10-31 05:19:17 -07:00
2026-10-29 11:49:48 -07:00
2026-04-14 21:52:49 -07:00
2026-07-25 11:30:02 -07:00
2026-10-01 22:21:03 +08:00
2026-10-29 11:49:48 -07:00
2026-10-21 13:46:11 -07:00
2026-09-05 11:48:42 -07:00
2026-10-28 14:35:39 -07:00
2026-10-25 06:05:06 -07:00
2026-10-17 22:30:32 -07:00
2026-10-24 07:04:01 -07:00
2026-10-28 14:35:39 -07:00
2026-10-28 14:35:39 -07:00
2026-07-02 21:11:34 -07:00
2026-05-08 21:35:27 -07:00
2026-10-20 12:52:58 -07:00
2026-09-16 15:27:09 -07:00
2026-10-16 19:52:10 -07:00
2026-09-27 20:17:12 +08:00
2026-07-02 21:11:34 -07:00
2026-09-04 23:10:41 -07:00
2026-10-21 13:37:00 -07:00
2026-10-26 11:52:15 -07:00
2026-10-26 11:52:15 -07:00
2026-06-03 00:12:28 -07:00
2026-10-28 14:35:39 -07:00
2026-10-29 11:49:48 -07:00
2026-10-29 11:49:48 -07:00
2026-10-05 18:22:16 +08:00
2026-10-28 08:07:36 -07:00
2026-10-29 11:46:25 -07:00
2026-10-07 20:04:09 +08:00
2026-09-01 10:37:52 -07:00
2026-09-01 10:11:09 -07:00
2026-10-05 11:58:04 +08:00
2026-06-01 20:01:30 -07:00
2026-10-30 09:09:05 -07:00
2026-07-21 00:08:05 -07:00
2026-06-11 21:56:16 -07:00
2026-09-20 23:34:57 -07:00
2026-10-09 12:43:04 +08:00
2026-10-16 21:10:38 -07:00
2026-10-16 21:10:38 -07:00
2026-10-28 14:35:39 -07:00
2026-09-02 11:36:58 -07:00
2026-07-29 10:30:46 -07:00
2026-10-01 23:12:23 +08:00
2026-10-12 02:55:50 -07:00
2026-10-24 06:58:59 -07:00
2026-10-28 14:35:39 -07:00
2026-10-26 23:18:43 -07:00
2026-04-25 23:06:37 -07:00
2025-11-18 23:18:35 -08:00
2026-08-24 18:36:46 -07:00
2026-01-07 13:06:08 -08:00
2026-03-30 12:11:30 -07:00
2026-07-31 19:50:59 -07:00
2026-07-29 10:30:30 -07:00
2026-06-24 21:38:21 -07:00
2026-05-05 19:14:44 -07:00
2026-05-05 19:14:44 -07:00
2026-09-30 20:45:47 +08:00
2026-07-31 23:56:04 -07:00
2026-09-10 23:03:32 -07:00
2026-07-31 23:56:04 -07:00
2026-04-02 15:59:09 -07:00
2026-10-10 10:11:24 +08:00
2026-10-25 12:04:59 -07:00
2026-10-10 10:11:24 +08:00
2026-10-21 22:45:53 -07:00
2026-10-21 22:45:53 -07:00
2026-09-18 01:01:04 -07:00
2026-08-16 10:36:59 -07:00
2026-06-24 16:24:45 -07:00
2026-05-19 14:24:25 -07:00
2026-10-18 02:43:03 -07:00
2026-01-07 13:06:08 -08:00
2026-06-11 21:56:16 -07:00
2026-10-30 09:09:05 -07:00
2026-05-13 10:48:58 -07:00
2026-08-27 22:28:25 -07:00
2026-05-13 10:48:58 -07:00
2026-09-30 16:22:31 +08:00
2024-07-04 11:00:41 -07:00
2026-09-30 16:22:31 +08:00
2026-07-23 17:44:02 -07:00
2026-05-13 09:24:59 -07:00
2026-08-24 18:39:30 -07:00
2026-05-04 22:10:49 -07:00
2026-03-06 15:22:39 -08:00
2026-05-04 22:10:49 -07:00
2026-10-21 14:49:36 -07:00
2026-10-24 07:04:01 -07:00
2026-10-24 07:04:01 -07:00