From: | Bernd Helmle <mailings(at)oopsware(dot)de> |
---|---|
To: | pgsql-jdbc(at)postgresql(dot)org |
Subject: | Configurable Send/Receive Buffer Sizes |
Date: | 2011-04-21 14:42:07 |
Message-ID: | 88D436FBC188677633204A9D@apophis.local |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-jdbc |
Folks,
please find attached a patch which allows to specify the size of TCP
send/receive buffers (SO_SNDBUF/SO_RECVBUF socket options) in the JDBC driver.
The patch adds two connection parameters to the JDBC driver:
send_buffer_size: Specifes the size of the TCP write buffer used with the
connection
receive_buffer_size: Specifies the size of the TCP read buffer used with the
connection
For example:
Connection conn =
DriverManager.getConnection("jdbc:postgresql://localhost:5432/bernd?loglevel=2&send_buffer_size=262144&receive_buffer_size=1048576",
"bernd", "");
It occured to me several times now where this functionality became useful,
especially when working on migration projects in the past, where the
application couldn't be changed immediately when doing large batch processing.
An interesting example is the small test program from
<http://archives.postgresql.org/pgsql-jdbc/2008-10/msg00045.php>
which could be make working with the appropiate buffer settings.
Maybe this is worth for discussion or even to investigate it further for
inclusion.
Note that on Linux you need to adjust the kernel maximum buffer sizes in
/proc/sys/net/core/wmem_max and /proc/sys/net/core/rmem_max to become any
settings effective. I have reports that this isn't necessary on Windows,
however. This certainly needs adequate documentation.
I didn't invest any time on benchmarks, but maybe there's also some value in it
performance-wise.
--
Thanks
Bernd
Attachment | Content-Type | Size |
---|---|---|
pgjdbc_buffer_sizes.patch | application/octet-stream | 6.0 KB |
From | Date | Subject | |
---|---|---|---|
Next Message | Kevin Grittner | 2011-04-21 14:49:54 | Re: Configurable Send/Receive Buffer Sizes |
Previous Message | bubba postgres | 2011-04-20 03:43:53 | Transport Compression (whatever became of that discussion?) |