|
41 | 41 | # L5 (D3 flipped) the rebound holders release against their |
42 | 42 | # current-epoch masters and both resources are immediately |
43 | 43 | # re-acquirable. Pinned gap was: release silently swallowed. |
44 | | -# L7 (D5 flipped) grd_recovery dump category: 13 counters, key |
45 | | -# roster per spec-4.6 §2.4, episode trail asserted |
46 | | -# (remaster_started/done, shards_remastered=2048, |
| 44 | +# L7 (D5 flipped) grd_recovery dump category: 31 keys (spec-4.6 |
| 45 | +# §2.4 base 13 + spec-5.16 D5 join-direction 5 + spec-4.6a |
| 46 | +# liveness/episode surface 13), full key roster, episode trail |
| 47 | +# asserted (remaster_started/done, shards_remastered=2048, |
47 | 48 | # holders_redeclared>=1, rebuild_timeout=0). |
48 | 49 | # |
49 | 50 | # Discipline notes: |
@@ -395,22 +396,29 @@ sub poll_query_until_timeout |
395 | 396 |
|
396 | 397 |
|
397 | 398 | # ---------- |
398 | | -# L7 (FLIPPED by D5; spec-5.16 D5 +5 join-direction counters): grd_recovery |
399 | | -# dump category exposes 18 counters and the recovery episode left the |
400 | | -# expected trail. |
| 399 | +# L7 (FLIPPED by D5; spec-5.16 D5 +5 join-direction counters; spec-4.6a |
| 400 | +# +13 episode/liveness keys): grd_recovery dump category exposes 31 |
| 401 | +# keys and the recovery episode left the expected trail. |
401 | 402 | # ---------- |
402 | 403 | is($pair->node1->safe_psql('postgres', |
403 | 404 | q{SELECT count(*) FROM cluster_dump_state() WHERE category = 'grd_recovery'}), |
404 | | - '18', 'L7 grd_recovery dump category exposes 18 counters (D5 + spec-5.16 join)'); |
| 405 | + '31', |
| 406 | + 'L7 grd_recovery dump category exposes 31 keys (spec-4.6 D5 + spec-5.16 join + spec-4.6a)'); |
405 | 407 |
|
406 | 408 | is($pair->node1->safe_psql('postgres', q{ |
407 | 409 | SELECT string_agg(key, ',' ORDER BY key) FROM cluster_dump_state() |
408 | 410 | WHERE category = 'grd_recovery'}), |
409 | | - 'block_path_failclosed,converts_requeued,holders_rebound,holders_redeclared,' |
410 | | - . 'rebuild_timeout,remaster_done,remaster_failed,remaster_started,' |
411 | | - . 'shards_remastered,stale_holder_swept,stale_request_drop,' |
412 | | - . 'unaffected_holder_survived,waiters_requeued', |
413 | | - 'L7 grd_recovery key roster matches spec-4.6 §2.4'); |
| 411 | + 'block_path_failclosed,block_redeclare_cursor,block_redeclare_done,' |
| 412 | + . 'block_redeclare_epoch,cluster_gate_timeout,converts_requeued,' |
| 413 | + . 'done_self_bitmap_hash,done_self_epoch,episode_epoch,event_coordinator,' |
| 414 | + . 'event_old_epoch,holders_rebound,holders_redeclared,' |
| 415 | + . 'join_block_recovering_failclosed,join_block_views_rebuilt,' |
| 416 | + . 'join_remaster_done,join_remaster_started,join_shards_remastered,' |
| 417 | + . 'last_event_id,rebuild_timeout,remaster_done,remaster_failed,' |
| 418 | + . 'remaster_started,shards_remastered,stale_holder_swept,' |
| 419 | + . 'stale_request_drop,state,state_enum_value,unaffected_holder_survived,' |
| 420 | + . 'wait_epoch_escape,waiters_requeued', |
| 421 | + 'L7 grd_recovery key roster (spec-4.6 §2.4 + spec-5.16 D5 + spec-4.6a)'); |
414 | 422 |
|
415 | 423 | is($pair->node1->safe_psql('postgres', |
416 | 424 | q{SELECT value::bigint >= 1 FROM cluster_dump_state() |
|
0 commit comments