There are potential caveats with the current version of receive_pushed:
- For nodes that lag behind (e.g. in the asynchronous case), the queue size keeps growing, leading to DRAM OOM.
- When a node calls receive_pushed, the first model per neighbor is taken which might be old. The first model should be used in the synchronous case, whereas only the latest model should be used in the asynchronous case.