Commit Graph

1 Commits (75a519e9a4b5801bc98b0db437ed3195619a4c81)

Author SHA1 Message Date
Ashley 75a519e9a4 Stop re-warming an instance-wide timeline that has nothing to warm
A member count of zero was the only guard on the local and network warms,
and a warm that finds no eligible posts leaves the count at zero, so a new
instance, or one whose network feed has aged out, ran the full candidate
query on every single timeline request. Both warms now record an empty
outcome and both read paths consult that record as well as the count, so
the query runs once per hour instead of once per request. Any write to
either feed puts the warm straight back in play.

The lock closures return a value as well, so a request that lost the lock
is distinguishable from one that completed a warm; both used to come back
as null.
6 days ago