Bug 763183 (GLUSTER-1451)

Summary: Server crashing when more than 5 files are opened simultaniously
Product: [Community] GlusterFS Reporter: kaushik <kbudiger>
Component: stripeAssignee: kaushik <kbudiger>
Status: CLOSED WONTFIX QA Contact:
Severity: medium Docs Contact:
Priority: medium    
Version: mainlineCC: amarts, gluster-bugs, vijay
Target Milestone: ---   
Target Release: ---   
Hardware: x86_64   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:

Description kaushik 2010-08-27 05:49:00 UTC
Vol file of the server which stripes:

volume localdisk1
	type storage/posix
	option directory /data/disk1
	option export-statfs-size no
end-volume

volume localdisk1-locks
	type features/locks
	subvolumes localdisk1
end-volume

volume localdisk2
	type storage/posix
	option directory /data/disk2
	option export-statfs-size no
end-volume

volume localdisk2-locks
	type features/locks
	subvolumes localdisk2
end-volume


volume localdisk3
	type storage/posix
	option directory /data/disk3
	option export-statfs-size no
end-volume

volume localdisk3-locks
	type features/locks
	subvolumes localdisk3
end-volume

volume stripevolume
	type cluster/stripe
	option block-size 4KB
	subvolumes localdisk1-locks localdisk2-locks localdisk3-locks
end-volume


volume stripeserver
	type protocol/server
	option transport-type tcp
	option transport.socket.listen-port 6102
	subvolumes stripevolume localdisk1-locks localdisk2-locks localdisk3-locks
	option auth.addr.localdisk1-locks.allow *
	option auth.addr.localdisk2-locks.allow *
	option auth.addr.localdisk3-locks.allow *
	option auth.addr.stripevolume.allow *
end-volume


--------------------------------------------------------------------------------

The assert for the IOVEC fails with count 18
The stack frame of the dump is as follows:



#0  0x00007f3d9f2e0a75 in *__GI_raise (sig=<value optimized out>) at ../nptl/sysdeps/unix/sysv/linux/raise.c:64
#1  0x00007f3d9f2e45c0 in *__GI_abort () at abort.c:92
#2  0x00007f3d9f2d9941 in *__GI___assert_fail (assertion=0x7f3d9d10d0a9 "count <= (16 - 1)", file=<value optimized out>, line=451, 
    function=0x7f3d9d10da90 "__socket_ioq_new") at assert.c:81
#3  0x00007f3d9d105fbc in __socket_ioq_new (this=0xb02a68, msg=0x7fffab149950) at socket.c:451
#4  0x00007f3d9d10ad69 in socket_submit_reply (this=0xb02a68, reply=0x7fffab149950) at socket.c:2191
#5  0x00007f3d9fc7859c in rpc_transport_submit_reply (this=0xb02a68, reply=0x7fffab149950) at rpc-transport.c:1006
#6  0x00007f3d9fc74014 in rpcsvc_transport_submit (trans=0xb02a68, hdrvec=0x7fffab149a10, hdrcount=1, proghdr=0x7fffab149aa0, proghdrcount=1, 
    progpayload=0xb2d368, progpayloadcount=16, iobref=0xb2e1a8, priv=0x0) at rpcsvc.c:1145
#7  0x00007f3d9fc745db in rpcsvc_submit_generic (req=0x7f3da0251038, proghdr=0x7fffab149aa0, hdrcount=1, payload=0xb2d368, payloadcount=16, iobref=0xb2e1a8)
    at rpcsvc.c:1302
#8  0x00007f3d9d51ec6c in server_submit_reply (frame=0x7f3d9e62a0c0, req=0x7f3da0251038, arg=0x7fffab149b50, payload=0xb2d368, payloadcount=16, 
    iobref=0xb2e1a8, sfunc=0x7f3d9fa5e7fd <xdr_serialize_readv_rsp>) at server.c:123
#9  0x00007f3d9d52ab69 in server_readv_cbk (frame=0x7f3d9e62a0c0, cookie=0x7f3d9e84b0b8, this=0xaf9248, op_ret=65536, op_errno=0, vector=0xb2d368, 
    count=16, stbuf=0x7fffab149c40, iobref=0xb2e1a8) at server3_1-fops.c:1274
#10 0x00007f3d9d7593c6 in stripe_readv_cbk (frame=0x7f3d9e62a1d0, cookie=0x7f3d9e84b138, this=0xaf7da8, op_ret=65536, op_errno=0, vector=0x7fffab149e90, 
    count=1, stbuf=0x7fffab149e20, iobref=0xb2d928) at stripe.c:3267
#11 0x00007f3d9d9673c8 in pl_readv_cbk (frame=0x7f3d9e84b138, cookie=0x7f3d9e84b038, this=0xaf3af8, op_ret=4096, op_errno=0, vector=0x7fffab149e90, 
    count=1, stbuf=0x7fffab149e20, iobref=0xb2d928) at posix.c:484
#12 0x00007f3d9db82293 in posix_readv (frame=0x7f3d9e84b038, this=0xaf26a8, fd=0x7f3d94c07248, size=4096, offset=110592) at posix.c:2361
#13 0x00007f3d9d967f46 in pl_readv (frame=0x7f3d9e84b138, this=0xaf3af8, fd=0x7f3d94c07248, size=4096, offset=110592) at posix.c:635
#14 0x00007f3d9d759ea7 in stripe_readv (frame=0x7f3d9e84b0b8, this=0xaf7da8, fd=0x7f3d94c07248, size=65536, offset=49152) at stripe.c:3381
#15 0x00007f3d9d5314e8 in server_readv_resume (frame=0x7f3d9e62a0c0, bound_xl=0xaf7da8) at server3_1-fops.c:2474
#16 0x00007f3d9d521442 in server_resolve_done (frame=0x7f3d9e62a0c0) at server-resolve.c:581
#17 0x00007f3d9d52153d in server_resolve_all (frame=0x7f3d9e62a0c0) at server-resolve.c:616
#18 0x00007f3d9d5213d6 in server_resolve (frame=0x7f3d9e62a0c0) at server-resolve.c:563
#19 0x00007f3d9d521514 in server_resolve_all (frame=0x7f3d9e62a0c0) at server-resolve.c:612
#20 0x00007f3d9d521306 in server_resolve_fd (frame=0x7f3d9e62a0c0) at server-resolve.c:527
#21 0x00007f3d9d521361 in server_resolve (frame=0x7f3d9e62a0c0) at server-resolve.c:544
#22 0x00007f3d9d5214c2 in server_resolve_all (frame=0x7f3d9e62a0c0) at server-resolve.c:605
#23 0x00007f3d9d5215b9 in resolve_and_resume (frame=0x7f3d9e62a0c0, fn=0x7f3d9d5312b9 <server_readv_resume>) at server-resolve.c:635
#24 0x00007f3d9d533538 in server_readv (req=0x7f3da0251038) at server3_1-fops.c:2972
#25 0x00007f3d9fc73a22 in rpcsvc_handle_rpc_call (svc=0xafba88, trans=0xb02a68, msg=0xb2d4b8) at rpcsvc.c:956
#26 0x00007f3d9fc73dac in rpcsvc_notify (trans=0xb02a68, mydata=0xafba88, event=RPC_TRANSPORT_MSG_RECEIVED, data=0xb2d4b8) at rpcsvc.c:1051
#27 0x00007f3d9fc789c7 in rpc_transport_notify (this=0xb02a68, event=RPC_TRANSPORT_MSG_RECEIVED, data=0xb2d4b8) at rpc-transport.c:1123
#28 0x00007f3d9d109188 in socket_event_poll_in (this=0xb02a68) at socket.c:1531
#29 0x00007f3d9d1094ff in socket_event_handler (fd=5, idx=1, data=0xb02a68, poll_in=1, poll_out=0, poll_err=0) at socket.c:1645
#30 0x00007f3d9febfd42 in event_dispatch_epoll_handler (event_pool=0xaed9f8, events=0xb01e38, i=0) at event.c:812
#31 0x00007f3d9febff36 in event_dispatch_epoll (event_pool=0xaed9f8) at event.c:876
#32 0x00007f3d9fec0212 in event_dispatch (event_pool=0xaed9f8) at event.c:984
#33 0x0000000000405b81 in main (argc=7, argv=0x7fffab14a8d8) at glusterfsd.c:1318

Comment 1 Amar Tumballi 2010-10-05 07:23:19 UTC
This config is not supported at all, hence can be marked INVALID, but by looking at the backtrace, seems like it gets fixed due to http://patches.gluster.com/patch/5251/