> [!XidGen]
> <table><tr><td rowspan="4" width="25%"><img src="assets/wl_ipc_xidgen.png"></td><td><b>Wait Category</b></td><td>IPC</td></tr><tr><td><b>Mechanism</b></td><td><code>GetNewTransactionId</code></td></tr><tr><td><b>Operations</b></td><td><a href="Operations/Tuple/ModifyTable">ModifyTable</a>, <a href="Operations/Distributed/Redistribute">Redistribute</a></td></tr><tr><td><b>Resources</b></td><td><a href="Resources/CPU">CPU</a>, <a href="Resources/RAM">Memory</a></td></tr><tr><td colspan="3"><b>Serialization Bottleneck</b> at the heart of the engine's transaction system. Every backend that starts a "write" transaction (INSERT, UPDATE, DELETE) must request a unique, monotonic transaction ID from a single, shared counter in memory.</td></tr></table>