When dashboards hit QuestDB with ever-changing queries like WHERE timestamp BETWEEN X AND Y (Grafana builds a new SQL string on every refresh instead of using bind variables), memory climbed with each reload and never came back, eventually OOM-killing the process. Two real bugs were hiding behind this: setting cairo.cache.rows or pg.factory.cache.* counts to 1 still kept 32 entries per cache (fixed in PR 1735), and LATEST BY queries grew NATIVEFASTMAP and NATIVELONGLIST without bound (fixed in PR 1722). The maintainers closed the issue once both fixes had landed in the next release. Note the cache size settings only apply per protocol: cairo.cache. covers the HTTP API, pg.factory.cache. covers the Postgres wire protocol.