diff options
Diffstat (limited to 'sql/mini_client.cc')
-rw-r--r-- | sql/mini_client.cc | 16 |
1 files changed, 11 insertions, 5 deletions
diff --git a/sql/mini_client.cc b/sql/mini_client.cc index a50bef4bbca..2b58430ef08 100644 --- a/sql/mini_client.cc +++ b/sql/mini_client.cc @@ -107,6 +107,8 @@ static my_bool is_NT(void) } #endif +extern ulong slave_net_timeout; + /* ** Create a named pipe connection */ @@ -197,6 +199,7 @@ MYSQL *mc_mysql_init(MYSQL *mysql) #ifdef __WIN__ mysql->options.connect_timeout=20; #endif + mysql->net.read_timeout = slave_net_timeout; return mysql; } @@ -413,7 +416,9 @@ my_bool mc_mysql_reconnect(MYSQL *mysql) mysql->client_flag, mysql->net.read_timeout)) { tmp_mysql.reconnect=0; - mc_mysql_close(&tmp_mysql); + mc_mysql_close(&tmp_mysql); + mysql->net.last_errno=CR_SERVER_GONE_ERROR; + strmov(mysql->net.last_error,ER(mysql->net.last_errno)); DBUG_RETURN(1); } tmp_mysql.free_me=mysql->free_me; @@ -504,11 +509,12 @@ mc_mysql_connect(MYSQL *mysql,const char *host, const char *user, struct sockaddr_un UNIXaddr; #endif DBUG_ENTER("mc_mysql_connect"); - - DBUG_PRINT("enter",("host: %s db: %s user: %s", + DBUG_PRINT("enter",("host: %s db: %s user: %s connect_time_out: %u read_timeout: %u", host ? host : "(Null)", db ? db : "(Null)", - user ? user : "(Null)")); + user ? user : "(Null)", + net_read_timeout, + (uint) slave_net_timeout)); thr_alarm_init(&alarmed); thr_alarm(&alarmed, net_read_timeout, &alarm_buff); @@ -652,7 +658,7 @@ mc_mysql_connect(MYSQL *mysql,const char *host, const char *user, goto error; } vio_keepalive(net->vio,TRUE); - + net->read_timeout=slave_net_timeout; /* Get version info */ mysql->protocol_version= PROTOCOL_VERSION; /* Assume this */ if ((pkt_length=mc_net_safe_read(mysql)) == packet_error) |