summaryrefslogtreecommitdiffstats
path: root/contrib/python/ipython/py2
diff options
context:
space:
mode:
authorbabenko <[email protected]>2026-06-13 10:11:20 +0300
committerbabenko <[email protected]>2026-06-13 10:31:02 +0300
commit9f54a83ed3c73de6ef3736e7959495675079e2b0 (patch)
tree30847db5fee7637cdde6086a9d313b7d4d94b584 /contrib/python/ipython/py2
parent27a12e8aa39050c21b94064ed09237f157f7f970 (diff)
Re-arm TCP_QUICKACK once per read batch in bus connection
TCP_QUICKACK is a one-shot option that the kernel clears after each ACK. `ReadSocket` re-armed it on every call, but `OnSocketRead` invokes `ReadSocket` in a loop, draining the socket in `ReadBufferSize`/`MaxBatchReadSize` chunks — so a single readable event issued one `setsockopt` syscall per chunk even though all those reads produce at most one ACK. Move the re-arm to once per `OnSocketRead` batch, gated on having read something; behavior is unchanged (the ACK for the just-received data is still armed after the socket is drained). Found while profiling `BusXferFS` threads on an RPC proxy: the per-chunk `setsockopt` showed up in the read path. Minor on its own (~0.3% there), but a clean cleanup. 🤖 Generated with [Claude Code](https://claude.com/claude-code) commit_hash:8a26370d548994ae3ab008f5d901df2e51bfff6d
Diffstat (limited to 'contrib/python/ipython/py2')
0 files changed, 0 insertions, 0 deletions