[ 
https://issues.apache.org/jira/browse/AMQ-6153?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15137236#comment-15137236
 ] 

Paul Gale commented on AMQ-6153:
--------------------------------

Any unit tests for this patch?

There's an edge case that can still creep in:

>From what I observed during a remote debugging session if the option
"socket.socketBufferSize" (not transport.socketBufferSize) is specified on
the transport connector's URI then the value is passed directly to the
listening socket. The listening socket will use this value to size the
accepted socket's receive buffer prior to the call in
TcpTransport#initialiseSocket().

FYI there are a few other "socket." prefixed options that end up being
applied directly to the listening socket. Just thought I'd mention it.
Something to be aware of.

Thanks,
Paul

On Mon, Feb 8, 2016 at 11:16 AM, Christopher L. Shannon (JIRA) <



> Toggle the TCP transport's ability to size a socket's read and write buffer
> ---------------------------------------------------------------------------
>
>                 Key: AMQ-6153
>                 URL: https://issues.apache.org/jira/browse/AMQ-6153
>             Project: ActiveMQ
>          Issue Type: Improvement
>          Components: Transport
>    Affects Versions: 5.12.1, 5.13.0
>         Environment: Linux
>            Reporter: Paul Gale
>            Assignee: Christopher L. Shannon
>            Priority: Minor
>             Fix For: 5.14.0, 5.13.2
>
>
> This improvement only applies when running ActiveMQ on Linux.
> At the moment the TCP transport sets the size of the accepted socket's read 
> and write buffer (64k by default). They can be given different sizes using 
> the relevant transport connector options.
> However, on Linux once a socket has had either its read or write buffer size 
> explicitly set the kernel will not automatically tune its size at run-time.
> Therefore add a new flag to instruct the TCP transport connector to not set 
> the size of the socket's buffers. Said flag should default to false for 
> backward compatibility.
> If the flag is true the TCP transport will ignore any configured size of the 
> socket's buffers. Perhaps print a warning? This will allow the kernel to 
> auto-tune the socket's buffer at run-time according to the kernel parameters 
> net.ipv4.tcp_rmem and net.ipv4.tcp_wmem.
> Flag name suggestion: disableSocketBufferSizing



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to