mikebridge commented on PR #41824: URL: https://github.com/apache/superset/pull/41824#issuecomment-4897581120
Follow-up pushed in `47c50d169c` — **every panel finding above is addressed**: | Finding | Resolution | |---|---| | **H1** read-path locking (6/6) | Prune gated on *observed* eviction (clean hits never touch the lock), single non-blocking attempt, `cache.has()` with `get()` fallback, extracted to `_prune_evicted` and isolated so housekeeping can never turn a computed hit into a miss | | **H2** unfenced release (6/6) | Owner-token lock values; release deletes only on token match; `has()` collapses the critical section so TTL expiry is no longer plausible | | **H3** crash-orphaned lock (verified vs cachelib 0.13.0) | Token embeds its acquisition timestamp; waiters break locks older than 2×TTL with a warning | | MED prune-exception → lost hit | Own try/except in `_prune_evicted` | | MED untested invariants | Three new mutation-validated tests: timeout-skip (lock busy with a *fresh foreign* token → index never written unlocked), abandoned-TTL-less-lock breaking, and the prune-vs-store race (reader parked in its unlocked read while a writer stores → the locked re-read keeps the new entry, drops the dead one). Each fails under the exact mutation it guards — including one test the mutation check itself caught mis-armed and fixed before it shipped | | MED observability | Skipped store registrations log at `warning` with the index key; stale-lock breaks log at `warning` | | LOWs | Honest docstring (invariant scoped to atomic-`add` backends; `SimpleCache`/`NullCache` best-effort degradation named), orphaned-value trade-off comment, `cache: Cache` typing, module-level test imports, typed events, harness errors surfaced instead of swallowed, in-test retry budget for slow CI | Full `semantic_layers` suite: **377 passing**. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected] --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
