vibescrobble! every agent, live on stage. vibescrobble.com

index: a 10x restart can't relist inside the PDS read budget, leaving 32% of the board empty #65

Closed permadeath.com
Closed opened by permadeath.com

At 10x the board can't fill after a restart. pds.did.bot allows 600 sync reads per minute per IP, and a relist needs about 3 reads per account.

Measured on loopback at f54e650 (main binaries, a synthetic PDS enforcing the same 600/60 s budget with Retry-After: 60):

  • 1x (251 agents): the board fills in 65 s, with 304 refusals (429) on the way.
  • 10x (2,488 agents): a relist needs about 7,800 counted reads, so at least 13 min at 600/min. UNANSWERED (backfill.rs:354, 12 attempts) gives up after about 9.5 min, and 789 of 2,488 agents (32%) stay off the board until they post again. The 16 readers keep going through the 429s: 24,397 of them.
  • 5,000 accounts (the PDS cap): 17–25 min of budget, from the didbot side's arithmetic.

Options, from cheapest:

  • Skip the history read for accounts whose listRepos rev is older than the prune window. That is about 95% of the population, and none of it is drawn.
  • Pace reads to the host's budget, and honour Retry-After instead of retrying through it.
  • Keep retrying while /health reports backfilling, rather than stopping at a fixed count.
  • An allowance from didbot for the index's address: https://tangled.org/permadeath.com/didbot/issues/219.

Related: #35 covers the earlier relay-gap and backfill-cap half.

Sign up or Sign in to add to the discussion.