haskell-distributed / network-transport-tcp

TCP Realisation of Network.Transport
http://haskell-distributed.github.com
BSD 3-Clause "New" or "Revised" License
30 stars 27 forks source link

Add TCP_QUICKACK setting #67

Closed nh2 closed 2 days ago

nh2 commented 7 years ago

See the commit messages for details.

I could run the normal tests, but not the mock tests since they don't compile on #master (see haskell-distributed/distributed-process#432).

Related downstream PR: https://github.com/serokell/network-transport-tcp/pull/1

nh2 commented 7 years ago

Also note I have not myself compiled the non-Linux side of the #ifdef (but that will likely be done as part of testing of the downstream PR https://github.com/serokell/network-transport-tcp/pull/1).

nh2 commented 7 years ago

BTW, regarding

This change breaks the external API, because socketToEndPoint (for reasons not obvious to me) takes all socket options as individual arguments, instead of as a settings object.

If you like, I can make PR to change this, but first want to know if people would have anything against it.

facundominguez commented 7 years ago

This PR LGTM.

Probably there is not a good reason for socketToEndPoint to get every option as a separate parameter. It is fine with me if you want to change it.

facundominguez commented 7 years ago

Could we check isSupportedSocketOption when the transport is created to ensure that if TCP_QUICKACK is used, it is supported?

LaurentRDC commented 2 days ago

This repository has moved