Skip to main content

SUBSCRIBE_TURNS

Constant SUBSCRIBE_TURNS 

Source
pub const SUBSCRIBE_TURNS: u32 = 20;
Expand description

How many of a conversation’s newest turns a subscribe carries.

A subscribe is not a request for a whole transcript. A client draws a window and asks more for what is above it, so handing it the whole conversation is a transcript’s worth of bytes written per client per connect and per refresh - measured at 111.7 MB of socket for four refreshes of a 68.9 MB transcript, which is 99% of that connection’s traffic - for turns it will not draw.

The window matches the client’s own SUBSCRIBE_TURNS (20), which its seat record trims to, and the MORE_TURNS page a client asks for: the newest page a subscribe carries and the newest page a client asks for are the same page, so a client that asks anyway is handed what it already holds, which it drops by turn key.

It is a ceiling, not the page. [server] first_frame_cap_kb holds the same page to its bytes (see page_within), so a conversation whose turns are large carries fewer than this.