> [!NOTE] ![[assets/wl_ipc_xidgen.png|256]]
>
> | | |
> | :--- | :--- |
> | **Wait Category** | IPC |
> | **Mechanism** | `GetNewTransactionId` |
> | **Operations** | [[Operations/Tuple/ModifyTable]], [[Operations/Distributed/Redistribute]] |
> | **Resources** | [[Resources/CPU|CPU]], [[Resources/RAM|Memory]] |
>
> **Serialization Bottleneck** 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.