The story of the per-write back-pressure contribution (PR #6462, branch message-write-cont): the steps, the doubts, the dead ends, and how Julien and Claude converged on the design. Companion to the design record write-result.md, which holds the full algorithm, correctness proof and contracts — this document tells how they came to be.
WriteStream's flow control — writeQueueFull() polling plus a single drainHandler slot — dates from Vert.x's beginnings and is a direct transcription of Node.js's streams design, where write() reports the high-water mark being crossed and the writer waits for the 'drain' event. That model is honest in Node, where a single thread makes the poll and the event trivially consistent. Transplanted into Vert.x's multi-threaded world, it acquired structural limits that no implementation can fix from below.
The poll reads live state