[Bugs] [Bug 1354404] New: process glusterd set TCP_USER_TIMEOUT failed
bugzilla at redhat.com
bugzilla at redhat.com
Mon Jul 11 09:11:46 UTC 2016
https://bugzilla.redhat.com/show_bug.cgi?id=1354404
Bug ID: 1354404
Summary: process glusterd set TCP_USER_TIMEOUT failed
Product: GlusterFS
Version: 3.7.12
Component: rpc
Keywords: Triaged
Severity: low
Assignee: bugs at gluster.org
Reporter: ndevos at redhat.com
CC: bugs at gluster.org
Depends On: 1349657
+++ This bug was initially created as a clone of Bug #1349657 +++
Description of problem:
Version-Release number of selected component (if applicable):
How reproducible:
Steps to Reproduce:
1.
2.
3.
Actual results:
Expected results:
Additional info:
--- Additional comment from Zhou Zhengping on 2016-06-24 00:29:40 CEST ---
Description of problem:
We can see glusterd's error log like this:
2016-06-24 04:34:30.252200] I [MSGID: 106544]
[glusterd.c:155:glusterd_uuid_init] 0-management: retrie
ved UUID: b49bd7b5-9cb5-4e87-8e23-8997bfb9c479
[2016-06-24 04:34:30.275351] I [MSGID: 106498]
[glusterd-handler.c:3644:glusterd_friend_add_from_peerin
fo] 0-management: connect returned 0
[2016-06-24 04:34:30.275494] I [rpc-clnt.c:991:rpc_clnt_connection_init]
0-management: setting frame-ti
meout to 600
[2016-06-24 04:34:30.276462] W [socket.c:979:__socket_keepalive] 0-socket:
failed to set TCP_USER_TIMEO
UT -1000 on socket 13, Invalid argument
[2016-06-24 04:34:30.276527] E [socket.c:3087:socket_connect] 0-management:
Failed to set keep-alive: I
nvalid argument
Additional info:
in linux kernel function do_tcp_setsockopt ,we can see code like this:
case TCP_USER_TIMEOUT:
/* Cap the max timeout in ms TCP will retry/retrans
* before giving up and aborting (ETIMEDOUT) a connection.
*/
if (val < 0)
err = -EINVAL;
else
icsk->icsk_user_timeout = msecs_to_jiffies(val);
break;
this code means , the timeout should not be lower than 0.But in function
glusterd_transport_keepalive_options_get, if option
"transport.tcp-user-timeout" not set ,the priv->timout will be -1, it will
cause socksetopt failed.
--- Additional comment from Vijay Bellur on 2016-06-24 00:44:19 CEST ---
REVIEW: http://review.gluster.org/14785 (rpc: invalid argument when function
setsockopt sets option TCP_USER_TIMEOUT) posted (#1) for review on master by
Zhou Zhengping (johnzzpcrystal at gmail.com)
--- Additional comment from Vijay Bellur on 2016-06-25 14:12:23 CEST ---
REVIEW: http://review.gluster.org/14785 (rpc: invalid argument when function
setsockopt sets option TCP_USER_TIMEOUT) posted (#2) for review on master by
Zhou Zhengping (johnzzpcrystal at gmail.com)
--- Additional comment from Vijay Bellur on 2016-07-11 03:59:08 CEST ---
COMMIT: http://review.gluster.org/14785 committed in master by Jeff Darcy
(jdarcy at redhat.com)
------
commit b2c73cbf423de6201f956f522b7429615c88869d
Author: Zhou Zhengping <johnzzpcrystal at gmail.com>
Date: Fri Jun 24 06:33:16 2016 +0800
rpc: invalid argument when function setsockopt sets option TCP_USER_TIMEOUT
If option "transport.tcp-user-timeout" hasn't been setted, glusterd's
priv->timeout will be -1, which will cause invalid argument when
set TCP_USER_TIMEOUT.
Change-Id: Ibc16264ceac0e69ab4a217ffa27c549b9fa21df9
BUG: 1349657
Signed-off-by: Zhou Zhengping <johnzzpcrystal at gmail.com>
Reviewed-on: http://review.gluster.org/14785
CentOS-regression: Gluster Build System <jenkins at build.gluster.org>
Smoke: Gluster Build System <jenkins at build.gluster.org>
NetBSD-regression: NetBSD Build System <jenkins at build.gluster.org>
Reviewed-by: Jeff Darcy <jdarcy at redhat.com>
--- Additional comment from Oleksandr Natalenko on 2016-07-11 11:10:29 CEST ---
I believe, this should be backported to 3.7 branch as we observe same warnings
with 3.7.11/12/13.
Referenced Bugs:
https://bugzilla.redhat.com/show_bug.cgi?id=1349657
[Bug 1349657] process glusterd set TCP_USER_TIMEOUT failed
--
You are receiving this mail because:
You are on the CC list for the bug.
You are the assignee for the bug.
More information about the Bugs
mailing list