John Spray
ebcbc1a482
pageserver: tighten up code around SLRU dir key handling ( #10082 )
...
## Problem
Changes in #9786 were functionally complete but missed some edges that
made testing less robust than it should have been:
- `is_key_disposable` didn't consider SLRU dir keys disposable
- Timeline `init_empty` was always creating SLRU dir keys on all shards
The result was that when we had a bug
(https://github.com/neondatabase/neon/pull/10080 ), it wasn't apparent in
tests, because one would only encounter the issue if running on a
long-lived timeline with enough compaction to drop the initially created
empty SLRU dir keys, _and_ some CLog truncation going on.
Closes: https://github.com/neondatabase/cloud/issues/21516
## Summary of changes
- Update is_key_global and init_empty to handle SLRU dir keys properly
-- the only functional impact is that we avoid writing some spurious
keys in shards >0, but this makes testing much more robust.
- Make `test_clog_truncate` explicitly use a sharded tenant
The net result is that if one reverts #10080 , then tests fail (i.e. this
PR is a reproducer for the issue)
2024-12-16 10:06:08 +00:00
..
2024-09-12 23:18:41 +01:00
2024-10-08 14:32:26 -05:00
2024-12-02 10:26:15 +00:00
2024-10-29 11:39:09 +00:00
2024-10-08 14:32:26 -05:00
2024-10-08 14:32:26 -05:00
2024-10-08 14:32:26 -05:00
2024-10-08 14:32:26 -05:00
2024-11-11 18:07:01 +00:00
2024-10-08 14:32:26 -05:00
2024-12-15 09:45:12 +00:00
2024-10-31 14:44:59 +00:00
2024-10-08 14:32:26 -05:00
2024-10-08 14:32:26 -05:00
2024-12-16 10:06:08 +00:00
2024-10-08 14:32:26 -05:00
2024-11-25 09:01:05 +00:00
2024-12-12 20:23:24 +00:00
2024-11-21 16:25:31 +00:00
2024-11-28 21:38:30 +00:00
2024-11-08 12:19:18 -06:00
2024-12-06 17:43:55 +00:00
2024-10-08 14:32:26 -05:00
2024-11-27 12:12:21 +00:00
2024-10-08 14:32:26 -05:00
2024-10-08 14:32:26 -05:00
2024-12-14 17:37:13 +00:00
2024-12-11 19:16:33 +00:00
2024-12-11 22:21:42 +00:00
2024-10-08 14:32:26 -05:00
2024-11-25 09:01:05 +00:00
2024-10-18 15:07:36 +03:00
2024-10-08 14:32:26 -05:00
2024-10-08 14:32:26 -05:00
2024-10-08 14:32:26 -05:00
2024-10-08 14:32:26 -05:00
2024-12-02 10:26:15 +00:00
2024-11-22 22:47:06 +00:00
2024-10-31 14:44:59 +00:00
2024-12-11 19:16:33 +00:00
2024-12-11 16:43:26 +00:00
2024-10-08 14:32:26 -05:00
2024-11-11 18:07:01 +00:00
2024-11-11 18:07:01 +00:00
2024-10-08 14:32:26 -05:00
2024-12-11 19:16:33 +00:00
2024-11-25 09:01:05 +00:00
2024-11-25 09:01:05 +00:00
2024-11-25 09:01:05 +00:00
2024-12-02 10:26:15 +00:00
2024-12-12 11:57:00 +00:00
2024-12-02 10:26:15 +00:00
2024-09-16 16:38:55 +01:00
2024-10-08 14:32:26 -05:00
2024-12-10 19:42:52 +00:00
2024-11-11 18:07:01 +00:00
2024-10-08 14:32:26 -05:00
2024-10-08 14:32:26 -05:00
2024-12-02 10:26:15 +00:00
2024-10-18 12:42:41 +02:00
2024-10-08 14:32:26 -05:00
2024-11-25 09:01:05 +00:00
2024-10-08 14:32:26 -05:00
2024-12-02 10:26:15 +00:00
2024-11-21 16:25:31 +00:00
2024-11-19 22:29:57 +02:00
2024-12-02 10:26:15 +00:00
2024-10-08 14:32:26 -05:00
2024-12-11 19:16:33 +00:00
2024-12-02 10:26:15 +00:00
2024-12-03 22:07:03 +00:00
2024-12-02 10:26:15 +00:00
2024-12-11 22:21:42 +00:00
2024-10-08 14:32:26 -05:00
2024-12-02 10:26:15 +00:00
2024-10-08 14:32:26 -05:00
2024-12-02 10:26:15 +00:00
2024-10-08 14:32:26 -05:00
2024-10-08 14:32:26 -05:00
2024-11-21 16:25:31 +00:00
2024-10-08 14:32:26 -05:00
2024-11-13 08:50:01 +02:00
2024-12-01 12:23:10 +00:00
2024-10-08 14:32:26 -05:00
2024-10-08 14:32:26 -05:00
2024-12-13 14:52:54 +00:00
2024-10-08 14:32:26 -05:00
2024-12-11 22:21:42 +00:00
2024-11-08 14:43:15 -06:00
2024-12-04 12:58:35 +00:00
2024-11-25 09:01:05 +00:00
2024-12-02 10:26:15 +00:00
2024-10-08 14:32:26 -05:00
2024-12-15 09:45:12 +00:00
2024-12-02 10:26:15 +00:00
2024-10-18 11:25:45 +01:00
2024-11-21 16:25:31 +00:00
2024-10-08 14:32:26 -05:00
2024-12-11 22:21:42 +00:00
2024-11-22 14:31:36 +00:00
2024-12-12 01:09:24 +00:00
2024-12-10 17:00:47 +00:00
2024-12-02 10:26:15 +00:00
2024-11-27 12:12:21 +00:00
2024-12-11 19:16:33 +00:00
2024-12-02 10:26:15 +00:00
2024-12-02 10:26:15 +00:00
2024-12-02 10:26:15 +00:00
2024-12-02 10:26:15 +00:00
2024-12-02 10:26:15 +00:00
2024-12-02 10:26:15 +00:00
2024-12-02 10:26:15 +00:00
2024-12-11 22:21:42 +00:00
2024-12-13 16:28:21 +00:00
2024-12-02 10:26:15 +00:00
2024-12-11 19:16:33 +00:00
2024-12-02 10:26:15 +00:00
2024-12-02 10:26:15 +00:00
2024-10-08 14:32:26 -05:00
2024-10-08 14:32:26 -05:00
2024-10-08 14:32:26 -05:00
2024-10-28 17:47:15 -05:00
2024-12-11 21:37:25 +00:00
2024-11-14 17:19:13 +02:00
2024-11-27 12:12:21 +00:00
2024-12-02 10:26:15 +00:00
2024-12-02 10:26:15 +00:00
2024-11-08 12:19:18 -06:00
2024-10-08 14:32:26 -05:00