diff options
author | unknown <msvensson@pilot.mysql.com> | 2007-01-29 14:31:48 +0100 |
---|---|---|
committer | unknown <msvensson@pilot.mysql.com> | 2007-01-29 14:31:48 +0100 |
commit | a195ad5ea26227dac0d5f503b9e37717b2bc40be (patch) | |
tree | 439ceec10fe0ab45b030eb00f2e47e06330862a3 /vio | |
parent | b95f107371606a6771e28447750372e172513d95 (diff) | |
download | mariadb-git-a195ad5ea26227dac0d5f503b9e37717b2bc40be.tar.gz |
Bug#22943 syscall pruning in libmysql
- Set the timeout values only where needed
sql/mysql_priv.h:
Add new functions for setting read and write timeout on "net"
sql/mysqld.cc:
- Move the setting of "read_timeout" to the value of "connect_timeout" to
just before 'check_connection' which is the function where we want
to use the different timeout
- With the new functions to set timeout on "net", there is no need to
specifically set the default wait_timeout on windows.
sql/net_serv.cc:
Add new functions for setting read and write timeout of "net, when
server is compiled not to use alarms it will set the write/read timeout
directly on connection using 'vio_timeout'(using setsockopt if socket)
sql/repl_failsafe.cc:
Put unused code within "#if NOT_USED"
sql/set_var.cc:
Use 'net_set_*_timeout' when adjusting timeout value
on the current connection
sql/slave.cc:
The read timeout used when connecting to master server is set
using 'mysql_options' in 'connect_to_master' function
sql/sql_parse.cc:
- Set read and write timeout values to "connect_timeout" during
connect phase
- Use "read_timeout" value during sslaccept phase, since this is during
connect phase it implies "connect-timeout"
- Set read and write timeout value back to default after connect phase
- Set "read_timeout" to "wait_timeout" while waiting for client.
sql/sql_repl.cc:
Set "read_timeout" to "wait_timeout" while ask other mysqld to send file
sql-common/client.c:
Call 'vio_timeout' to set up the read and write timeout's for the
newly created connection. It only need to be done once at connect time.
vio/vio.c:
Use 'vio_timeout' for setting timeout also on an SSL connection
since they both use sockets
vio/viossl.c:
Remove 'vio_ssl_timeout' function
Diffstat (limited to 'vio')
-rw-r--r-- | vio/vio.c | 2 | ||||
-rw-r--r-- | vio/viossl.c | 11 |
2 files changed, 1 insertions, 12 deletions
diff --git a/vio/vio.c b/vio/vio.c index 6174acd7024..1eeafe483dc 100644 --- a/vio/vio.c +++ b/vio/vio.c @@ -96,7 +96,7 @@ void vio_reset(Vio* vio, enum enum_vio_type type, vio->in_addr =vio_ssl_in_addr; vio->vioblocking =vio_ssl_blocking; vio->is_blocking =vio_is_blocking; - vio->timeout =vio_ssl_timeout; + vio->timeout =vio_timeout; } else /* default is VIO_TYPE_TCPIP */ #endif /* HAVE_OPENSSL */ diff --git a/vio/viossl.c b/vio/viossl.c index 62145fe5006..8da9723d7d8 100644 --- a/vio/viossl.c +++ b/vio/viossl.c @@ -416,15 +416,4 @@ int vio_ssl_blocking(Vio * vio __attribute__((unused)), } -void vio_ssl_timeout(Vio *vio __attribute__((unused)), - uint which __attribute__((unused)), - uint timeout __attribute__((unused))) -{ -#ifdef __WIN__ - ulong wait_timeout= (ulong) timeout * 1000; - (void) setsockopt(vio->sd, SOL_SOCKET, - which ? SO_SNDTIMEO : SO_RCVTIMEO, (char*) &wait_timeout, - sizeof(wait_timeout)); -#endif /* __WIN__ */ -} #endif /* HAVE_OPENSSL */ |