Area: cache — scalability · found via TODO sweep
Issue: the in-memory cache version map keys on table (and scope) and is never bounded or evicted. The code's own TODO flags it: "potentially could be bad/dangerous with a low amount of RAM AND a TON of tables/scopes per table." Under high table/scope cardinality this grows unbounded.
Severity: low today (bounded table set, single-tenant); a real memory risk once scopes/multi-tenant land or table cardinality grows.
Scope: bound the version map (size cap / eviction), or move versions to L2 for distributed/high-cardinality deployments. Coordinate with tiered-cache #86 and the scope/multi-tenant story #214/#235.
Found via codebase TODO sweep, 2026-06-04 (internal/cache/version_manager.go:12).
Area: cache — scalability · found via TODO sweep
Issue: the in-memory cache version map keys on table (and scope) and is never bounded or evicted. The code's own TODO flags it: "potentially could be bad/dangerous with a low amount of RAM AND a TON of tables/scopes per table." Under high table/scope cardinality this grows unbounded.
Severity: low today (bounded table set, single-tenant); a real memory risk once scopes/multi-tenant land or table cardinality grows.
Scope: bound the version map (size cap / eviction), or move versions to L2 for distributed/high-cardinality deployments. Coordinate with tiered-cache #86 and the scope/multi-tenant story #214/#235.
Found via codebase TODO sweep, 2026-06-04 (
internal/cache/version_manager.go:12).