Chris Lu
81ca5cb6c6
s3api: drop two redundant filer round-trips per listed version entry ( #11068 )
...
* s3api: drop two redundant filer round-trips per listed version entry
ListObjectVersions paid two avoidable getEntry calls while walking a
bucket, both re-fetching data the walk already held:
- getObjectVersionList re-read the .versions directory entry that every
caller had just received from listing the parent directory (or from
its own sibling probe). Pass the entry down instead: one RPC saved
per object listed.
- getObjectOwnerFromVersion, on a version with no stamped owner,
re-fetched the same version entry its OwnerID had been extracted
from. The refetch cannot answer differently, so data written before
owners were stamped cost one futile RPC per listed version, forever.
All round-trips on this path are sequential, so on large versioned
buckets (Veeam-style workloads) they add up to a visible share of
per-page latency and gateway CPU.
Claude-Session: https://claude.ai/code/session_01FquvGtTD2zA3uMZGQHAuV4
* s3api: treat a nil .versions entry as an empty version list
filer_pb.GetEntry's contract permits (nil, nil) for an absent entry, and
the old internal lookup answered that case with an empty list. Keep that
answer now that the entry arrives from the caller.
Claude-Session: https://claude.ai/code/session_01FquvGtTD2zA3uMZGQHAuV4
2026-09-01 10:29:52 -07:00
..
2026-01-28 14:34:07 -08:00
2026-08-27 16:23:51 -07:00
2026-08-23 11:49:52 -07:00
2026-08-21 23:42:26 -07:00
2026-04-20 12:04:41 -07:00
2026-08-24 00:52:01 -07:00
2026-08-31 10:24:22 -07:00
2026-03-07 09:19:40 -08:00
2026-05-31 11:15:05 -07:00
2026-08-24 00:52:01 -07:00
2026-08-21 23:42:26 -07:00
2026-08-27 22:29:48 -07:00
2026-07-02 21:11:41 -07:00
2026-08-03 12:45:42 -07:00
2026-07-31 19:51:03 -07:00
2026-08-25 15:31:32 -07:00
2026-05-18 21:35:53 -07: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-08-21 22:32:47 -07:00
2026-02-20 18:40:47 -08:00
2026-08-24 00:52:01 -07:00
2026-01-12 10:45:24 -08:00
2026-08-26 10:09:05 -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-08-26 10:09:05 -07:00
2026-06-20 08:28:40 -07:00
2026-08-24 18:39:30 -07:00
2026-06-14 13:55:11 -07:00
2026-08-26 10:09:05 -07:00
2026-04-17 12:20:28 -07:00
2026-08-26 10:09:05 -07:00
2026-02-16 13:59:13 -08:00
2026-04-17 12:23:21 -07:00
2026-08-17 14:46:25 -07:00
2026-07-22 14:38:06 -07:00
2026-08-05 13:15:28 -07:00
2026-08-04 16:00:04 -07:00
2026-08-19 22:59:56 -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-06-10 00:30:43 -07:00
2026-06-10 00:30:43 -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-07-27 17:48:20 -07:00
2026-07-05 20:19:20 -07:00
2026-07-23 17:44:02 -07:00
2026-07-23 17:44:02 -07:00
2026-08-28 16:12:09 -07:00
2026-08-28 14:30:21 -07:00
2026-08-27 22:30:53 -07:00
2026-01-07 13:06:08 -08:00
2026-08-28 14:30:21 -07:00
2026-08-08 21:24:30 -07:00
2026-02-18 18:20:03 -08:00
2026-06-02 14:45:45 -07:00
2026-05-19 13:03:30 -07:00
2026-02-19 22:52:05 -08:00
2026-06-09 00:48:38 -07:00
2024-07-04 11:00:41 -07:00
2026-08-31 10:24:22 -07:00
2026-08-31 10:24:22 -07:00
2026-04-03 16:04:27 -07:00
2025-12-27 12:25:33 -08:00
2026-07-07 12:36:47 -07:00
2026-08-31 10:24:22 -07:00
2026-08-27 22:30:53 -07:00
2026-01-07 13:06:08 -08:00
2025-11-13 16:10:46 -08:00
2026-07-10 12:14:18 -07:00
2026-07-08 01:53:37 -07:00
2026-07-27 17:48:20 -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-07-27 17:48:20 -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-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-08-04 16:00:04 -07:00
2026-06-14 13:54:49 -07:00
2026-08-27 16:46:46 -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-08-24 00:52:01 -07:00
2025-10-29 13:43:27 -07:00
2026-07-27 16:42:01 -07:00
2026-08-14 10:58:45 -07:00
2026-08-19 20:09:23 -07:00
2026-02-07 13:27:47 -08:00
2026-08-28 16:32:30 -07:00
2026-08-21 23:42:26 -07:00
2026-07-02 21:11:34 -07:00
2025-08-21 08:28:07 -07:00
2026-07-02 21:11:41 -07:00
2026-08-28 14:30:21 -07:00
2026-02-12 23:11:41 -08:00
2026-07-26 00:52:22 -07:00
2026-03-27 23:15:01 -07:00
2026-08-24 00:52:01 -07:00
2026-08-24 00:52:01 -07:00
2026-08-19 20:09:23 -07:00
2025-08-21 08:28:07 -07:00
2026-07-21 08:59:40 -07:00
2026-07-21 08:59:40 -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-07-14 11:53:53 -07:00
2026-06-22 22:19:24 -07:00
2026-08-28 14:30:21 -07:00
2025-10-24 01:45:22 -07:00
2026-08-05 17:08:21 -07:00
2026-07-23 17:44:02 -07:00
2026-07-02 09:14:54 -07:00
2026-05-19 17:35:44 -07:00
2026-08-05 17:08:21 -07:00
2026-08-26 10:05:49 -07:00
2026-02-03 11:55:12 -08:00
2026-08-28 16:32:30 -07:00
2026-08-28 16:32:30 -07:00
2026-08-27 22:26:15 -07:00
2026-05-05 11:26:08 -07:00
2026-08-16 12:57:12 -07:00
2026-08-16 12:57:12 -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-08-28 14:30:21 -07:00
2026-01-07 13:06:08 -08:00
2026-08-24 16:14:52 -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-07-15 02:31:51 -07:00
2026-07-15 02:31:51 -07:00
2026-07-21 00:08:05 -07:00
2026-08-27 11:56:33 -07:00
2026-05-10 12:08:06 -07:00
2026-05-10 14:55:59 -07:00
2026-06-14 00:16:14 -07:00
2026-05-10 13:34:25 -07:00
2026-08-19 20:07:57 -07:00
2026-08-26 10:05:49 -07:00
2026-06-22 22:19:24 -07:00
2026-08-28 14:30:21 -07:00
2026-08-05 20:29:28 -07:00
2026-07-22 14:38:06 -07:00
2026-08-05 20:29:28 -07:00
2026-08-28 16:12:09 -07:00
2026-08-28 14:30:21 -07:00
2026-08-28 14:30:21 -07:00
2026-08-24 15:10:34 -07:00
2026-01-17 18:40:48 -08:00
2026-08-10 11:04:06 -07:00
2026-08-05 00:24:54 -07:00
2026-07-09 00:22:34 -07:00
2026-08-08 20:24:44 -07:00
2026-07-30 12:57:31 -07:00
2026-08-24 15:10:34 -07:00
2026-08-28 16:12:09 -07:00
2026-07-02 21:11:34 -07:00
2026-08-24 18:39:30 -07:00
2026-04-14 21:52:49 -07:00
2026-07-25 11:30:02 -07:00
2026-07-31 19:43:45 -07:00
2026-08-28 14:30:21 -07:00
2026-08-08 21:24:30 -07:00
2026-08-28 14:30:21 -07:00
2025-07-19 00:49:56 -07:00
2026-07-15 02:31:51 -07:00
2026-08-27 16:25:56 -07:00
2026-07-02 21:11:34 -07:00
2026-05-08 21:35:27 -07:00
2026-07-02 21:11:34 -07:00
2025-07-18 22:25:58 -07:00
2026-07-02 21:11:34 -07:00
2026-06-22 07:52:01 -07:00
2026-06-09 00:48:38 -07:00
2026-08-27 16:35:45 -07:00
2026-06-03 00:12:28 -07:00
2026-08-28 16:32:30 -07:00
2026-08-23 11:30:43 -07:00
2026-08-28 16:32:30 -07:00
2026-08-24 15:10:34 -07:00
2026-09-01 10:11:09 -07:00
2026-06-01 20:01:30 -07:00
2026-09-01 10:29:52 -07:00
2026-07-21 00:08:05 -07:00
2026-06-11 21:56:16 -07:00
2026-08-27 16:46:46 -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-08-21 11:47:53 -07:00
2026-07-29 10:30:46 -07:00
2026-03-09 11:54:32 -07:00
2026-05-18 19:44:19 -07:00
2026-08-26 10:09:05 -07:00
2026-08-09 21:59:42 -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-02-23 22:59:53 -08:00
2026-07-31 23:56:04 -07:00
2026-07-31 23:56:04 -07:00
2026-04-02 15:59:09 -07:00
2026-04-02 17:37:05 -07:00
2026-07-31 23:56:04 -07:00
2026-07-31 19:51:03 -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-08-16 10:36:59 -07:00
2026-01-07 13:06:08 -08:00
2026-06-11 21:56:16 -07:00
2026-06-11 21:56:16 -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
2024-07-04 11:00:41 -07:00
2026-07-02 21:11:41 -07: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-06-23 01:25:32 -07:00
2026-06-23 01:25:32 -07:00