Chris Lu
2d41d37150
s3: route non-versioned CompleteMultipartUpload off the DLM
...
A non-versioned multipart completion's only contended mutation is the final
object CreateEntry; assembling parts and the idempotent-replay check are
read-only. So when the destination is non-versioned, route that final write to
the object's owner with the precondition (reusing the route-by-key path) and run
the assembly outside any lock, skipping the distributed lock and gateway
precondition.
mkFileRouted builds the object entry the way mkFile does, applies the existing
modifier, and routes the conditioned CreateEntry to the owner. Versioned and
suspended completions keep the lock path. This is a cold path (one completion per
upload), so the win is consistency with the other write paths rather than
throughput.
2026-05-23 09:46:02 -07:00
..
2026-01-28 14:34:07 -08:00
2026-04-27 16:37:33 -07:00
2026-05-07 18:54:06 -07:00
2026-04-20 12:04:41 -07:00
2026-04-07 11:13:29 -07:00
2026-05-20 10:13:33 -07:00
2026-03-07 09:19:40 -08:00
2026-01-07 13:06:08 -08:00
2026-05-20 10:13:33 -07:00
2026-05-13 17:06:14 -07:00
2026-04-17 12:23:21 -07:00
2024-07-04 11:00:41 -07:00
2026-05-18 21:35:53 -07:00
2026-05-21 00:39:42 -07:00
2026-02-20 18:40:47 -08:00
2026-05-08 21:35:27 -07:00
2026-01-12 10:45:24 -08:00
2026-05-21 00:39:42 -07:00
2026-02-26 16:36:24 -08:00
2026-04-17 12:23:21 -07:00
2025-11-26 12:24:02 -08:00
2026-02-03 11:55:12 -08:00
2026-02-16 13:59:13 -08:00
2026-04-07 13:22:21 -07:00
2026-04-17 12:20:28 -07:00
2026-04-17 12:20:28 -07:00
2026-02-16 13:59:13 -08:00
2026-04-17 12:23:21 -07:00
2026-04-14 10:52:00 -07:00
2026-01-07 13:06:08 -08:00
2026-04-03 16:04:27 -07:00
2026-02-26 16:36:24 -08:00
2026-04-21 20:17:42 -07:00
2026-04-21 20:17:42 -07:00
2025-08-11 10:31:01 -07:00
2025-12-29 20:17:23 -08:00
2025-12-04 14:51:37 -08:00
2026-03-07 11:10:02 -08:00
2026-05-01 01:14:15 -07:00
2025-11-18 23:18:35 -08:00
2026-04-25 23:06:37 -07:00
2026-05-23 09:46:02 -07:00
2026-03-23 13:35:16 -07:00
2026-01-07 13:06:08 -08:00
2026-05-08 11:03:03 -07:00
2026-02-18 18:20:03 -08:00
2026-05-19 13:03:30 -07:00
2026-02-19 22:52:05 -08:00
2026-04-03 16:04:27 -07:00
2024-07-04 11:00:41 -07:00
2026-04-02 17:37:05 -07:00
2026-04-02 17:37:05 -07:00
2026-04-03 16:04:27 -07:00
2025-12-27 12:25:33 -08:00
2026-05-19 13:03:30 -07:00
2026-03-28 13:24:11 -07:00
2026-01-07 13:06:08 -08:00
2025-11-13 16:10:46 -08:00
2026-04-07 13:21:30 -07:00
2025-08-30 11:15:48 -07:00
2026-04-17 12:23:21 -07:00
2025-11-13 16:10:46 -08:00
2025-12-26 13:21:15 -08: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-05-04 19:14:41 -07: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-05-04 19:21:41 -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-04-03 16:04:27 -07:00
2026-01-07 13:06:08 -08:00
2025-12-30 12:40:59 -08:00
2026-05-19 17:34:51 -07:00
2026-05-19 17:34:51 -07:00
2026-03-27 22:50:02 -07:00
2026-05-08 21:35:27 -07:00
2025-10-29 13:43:27 -07:00
2026-05-19 17:35:08 -07:00
2026-05-19 17:35:08 -07:00
2026-02-07 13:27:47 -08:00
2026-05-08 21:54:39 -07:00
2026-03-27 22:50:02 -07:00
2026-05-08 21:54:39 -07:00
2025-08-21 08:28:07 -07:00
2026-02-12 23:11:41 -08:00
2026-03-27 23:15:01 -07:00
2026-03-16 12:58:26 -07:00
2025-08-21 08:28:07 -07:00
2026-01-07 13:06:08 -08:00
2026-03-06 12:35:08 -08:00
2026-04-03 16:04:27 -07:00
2025-08-21 08:28:07 -07:00
2025-10-24 01:45:22 -07:00
2026-05-05 11:26:08 -07:00
2026-05-19 16:03:45 -07:00
2026-05-19 17:35:44 -07:00
2026-05-19 17:35:44 -07:00
2026-01-07 13:06:08 -08:00
2026-02-03 11:55:12 -08:00
2026-04-08 17:08:57 -07:00
2026-05-05 11:26:08 -07:00
2026-02-07 13:27:47 -08:00
2026-05-19 16:03:45 -07:00
2026-05-10 09:39:05 -07:00
2026-05-13 10:48:58 -07:00
2026-01-07 13:06:08 -08:00
2026-04-26 16:31:42 -07:00
2026-01-22 16:56:35 -08:00
2026-02-08 20:06:32 -08:00
2026-03-04 12:52:09 -08:00
2026-05-10 12:08:06 -07:00
2026-05-10 14:55:59 -07:00
2026-05-10 13:34:25 -07:00
2026-05-21 09:35:42 -07:00
2026-05-23 09:45:23 -07:00
2026-05-10 14:55:59 -07:00
2026-05-21 09:35:42 -07:00
2026-05-22 23:17:53 -07:00
2026-05-09 18:38:38 -07:00
2026-05-22 23:07:26 -07:00
2026-01-17 18:40:48 -08:00
2026-05-21 14:05:16 -07:00
2026-03-11 02:28:34 -07:00
2026-04-02 15:59:52 -07:00
2026-05-21 15:48:47 -07:00
2026-05-23 09:45:23 -07:00
2026-04-17 14:55:06 -07:00
2026-05-23 09:45:23 -07:00
2026-04-14 21:52:49 -07:00
2026-05-23 09:45:23 -07:00
2025-07-19 00:49:56 -07:00
2026-02-08 20:06:32 -08:00
2026-05-21 15:48:47 -07:00
2026-05-08 21:35:27 -07:00
2026-05-08 21:35:27 -07:00
2025-07-18 02:19:50 -07:00
2025-07-18 22:25:58 -07:00
2025-12-29 23:54:00 -08:00
2025-11-20 11:42:22 -08:00
2026-03-28 13:24:11 -07:00
2026-05-22 22:48:07 -07:00
2026-05-23 09:46:02 -07:00
2026-05-23 09:45:23 -07:00
2026-04-17 14:57:59 -07:00
2026-05-13 10:48:58 -07:00
2026-03-28 13:24:11 -07:00
2026-02-16 13:59:13 -08:00
2025-12-09 10:24:35 -08:00
2026-05-03 18:52:45 -07:00
2026-03-09 11:54:32 -07:00
2026-05-18 19:44:19 -07:00
2026-05-22 23:09:37 -07:00
2026-04-03 16:04:27 -07:00
2026-04-25 23:06:37 -07:00
2025-11-18 23:18:35 -08:00
2026-01-07 13:06:08 -08:00
2026-03-30 12:11:30 -07:00
2026-05-05 19:14:44 -07:00
2026-05-05 19:14:44 -07:00
2026-02-23 22:59:53 -08:00
2026-04-02 15:59:09 -07:00
2026-04-02 17:37:05 -07:00
2026-05-05 19:14:44 -07:00
2026-02-10 17:57:08 -08:00
2026-05-19 14:24:25 -07:00
2026-05-19 14:24:25 -07:00
2026-01-07 13:06:08 -08:00
2026-01-07 13:06:08 -08:00
2026-02-07 13:27:47 -08:00
2026-05-13 10:48:58 -07:00
2026-05-13 10:48:58 -07:00
2026-05-13 10:48:58 -07:00
2024-07-04 11:00:41 -07:00
2025-08-14 20:38:03 -07:00
2026-04-26 16:31:42 -07:00
2026-05-13 09:24:59 -07:00
2026-05-20 10:13:33 -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
2025-07-28 02:49:43 -07:00
2026-01-30 22:57:05 -08:00