Bug 763856 (GLUSTER-2124) - NFS crashes when volume-id option is not given with dynamic-volume option
Summary: NFS crashes when volume-id option is not given with dynamic-volume option
Keywords:
Status: CLOSED CURRENTRELEASE
Alias: GLUSTER-2124
Product: GlusterFS
Classification: Community
Component: nfs
Version: mainline
Hardware: All
OS: Linux
low
low
Target Milestone: ---
Assignee: Gaurav
QA Contact:
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2010-11-17 10:41 UTC by Shehjar Tikoo
Modified: 2015-12-01 16:45 UTC (History)
3 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed:
Regression: RTP
Mount Type: nfs
Documentation: ---
CRM:
Verified Versions:
Embargoed:


Attachments (Terms of Use)

Description Shehjar Tikoo 2010-11-17 10:41:25 UTC
Not a critical crash but needs to be fixed nonetheless. Not critical because the only time when dynamic-volume option is set is through the gluster CLI which correctly always sets the volume-id option also.

This crash occurred when Sac manually changed commented out the volume-id line which is not a supported combination of operations.
[2010-11-11 02:37:40.39562] D [nfs.c:212:nfs_subvolume_set_started] nfs: Starting up: distrib , vols started till now: 1
[2010-11-11 02:37:40.39584] T [nfs-fops.c:353:nfs_fop_lookup] nfs: Lookup: /
[2010-11-11 02:37:40.39716] T [rpc-clnt.c:1222:rpc_clnt_record] : Auth Info: pid: 0, uid: 0, gid: 0, owner: 0
[2010-11-11 02:37:40.39739] T [rpc-clnt.c:1122:rpc_clnt_record_build_header] rpc-clnt: Request fraglen 324, payload: 196, rpc hdr: 128
[2010-11-11 02:37:40.39767] T [rpc-clnt.c:1426:rpc_clnt_submit] rpc-clnt: submitted request (XID: 0x5 Program: GlusterFS 3.1, ProgVers: 310, Proc: 27) to rpc-transport (distrib-client-0)
[2010-11-11 02:37:40.39787] T [nfs.c:603:notify] nfs: All children up, starting RPC
[2010-11-11 02:37:40.39801] D [nfs.c:107:nfs_init_versions] nfs: Initing protocol versions
[2010-11-11 02:37:40.39816] D [mount3.c:1567:mnt3svc_init] nfs-mount: Initing Mount v3 state
[2010-11-11 02:37:40.39837] T [mount3.c:1466:__mnt3_init_volume_export] nfs-mount: Volume exports enabled
[2010-11-11 02:37:40.39850] T [mount3.c:1487:mnt3_init_options] nfs-mount: Initing options for: distrib
[2010-11-11 02:37:40.39866] E [mount3.c:1376:__mnt3_init_volume] nfs-mount: DVM is on but volume-id not given for volume: distrib
[2010-11-11 02:37:40.39880] E [mount3.c:1490:mnt3_init_options] nfs-mount: Volume init failed
[2010-11-11 02:37:40.39893] E [mount3.c:1523:mnt3_init_state] nfs-mount: Options init failed
[2010-11-11 02:37:40.39905] E [mount3.c:1570:mnt3svc_init] nfs-mount: Mount v3 state init failed
pending frames:

patchset: v3.1.0
signal received: 11

time of crash: 2010-11-11 02:37:40
configuration details:
argp 1
backtrace 1
dlfcn 1
fdatasync 1
libpthread 1
llistxattr 1
setfsid 1
spinlock 1
epoll.h 1
xattr.h 1
st_atim.tv_nsec 1
package-string: glusterfs 3.1.0
/lib64/libc.so.6[0x323cc302d0]
/opt/glusterfs/3.1.0/lib/glusterfs/3.1.0/xlator/nfs/server.so(nfs_init_versions+0xc0)[0x2aaaab95d3c0]
/opt/glusterfs/3.1.0/lib/glusterfs/3.1.0/xlator/nfs/server.so(notify+0x13c)[0x2aaaab95d64c]
/opt/glusterfs/3.1.0/lib/libglusterfs.so.0(xlator_notify+0x46)[0x2b7a3234bca6]
/opt/glusterfs/3.1.0/lib/libglusterfs.so.0(default_notify+0x87)[0x2b7a3234f7d7]
/opt/glusterfs/3.1.0/lib/libglusterfs.so.0(xlator_notify+0x46)[0x2b7a3234bca6]
/opt/glusterfs/3.1.0/lib/libglusterfs.so.0(default_notify+0x87)[0x2b7a3234f7d7]
/opt/glusterfs/3.1.0/lib/libglusterfs.so.0(xlator_notify+0x46)[0x2b7a3234bca6]
/opt/glusterfs/3.1.0/lib/libglusterfs.so.0(default_notify+0x87)[0x2b7a3234f7d7]
/opt/glusterfs/3.1.0/lib/libglusterfs.so.0(xlator_notify+0x46)[0x2b7a3234bca6]
/opt/glusterfs/3.1.0/lib/libglusterfs.so.0(default_notify+0x87)[0x2b7a3234f7d7]
/opt/glusterfs/3.1.0/lib/libglusterfs.so.0(xlator_notify+0x46)[0x2b7a3234bca6]
/opt/glusterfs/3.1.0/lib/libglusterfs.so.0(default_notify+0x87)[0x2b7a3234f7d7]
/opt/glusterfs/3.1.0/lib/libglusterfs.so.0(xlator_notify+0x46)[0x2b7a3234bca6]
/opt/glusterfs/3.1.0/lib/libglusterfs.so.0(default_notify+0x87)[0x2b7a3234f7d7]
/opt/glusterfs/3.1.0/lib/glusterfs/3.1.0/xlator/cluster/distribute.so(dht_notify+0x113)[0x2aaaaacea713]
/opt/glusterfs/3.1.0/lib/glusterfs/3.1.0/xlator/cluster/distribute.so(notify+0xb)[0x2aaaaacea9bb]
/opt/glusterfs/3.1.0/lib/libglusterfs.so.0(xlator_notify+0x46)[0x2b7a3234bca6]
/opt/glusterfs/3.1.0/lib/glusterfs/3.1.0/xlator/protocol/client.so(client_notify_parents_child_up+0x24)[0x2aaaaaacfd34]
/opt/glusterfs/3.1.0/lib/glusterfs/3.1.0/xlator/protocol/client.so(client_post_handshake+0x100)[0x2aaaaaad0420]
/opt/glusterfs/3.1.0/lib/glusterfs/3.1.0/xlator/protocol/client.so(client_setvolume_cbk+0x1aa)[0x2aaaaaad172a]
/opt/glusterfs/3.1.0/lib/libgfrpc.so.0(rpc_clnt_handle_reply+0xa2)[0x2b7a325aa302]
/opt/glusterfs/3.1.0/lib/libgfrpc.so.0(rpc_clnt_notify+0x8d)[0x2b7a325aa4fd]
/opt/glusterfs/3.1.0/lib/libgfrpc.so.0(rpc_transport_notify+0x2c)[0x2b7a325a579c]
/opt/glusterfs/3.1.0/lib/glusterfs/3.1.0/rpc-transport/socket.so(socket_event_poll_in+0x3f)[0x2aaaaeed536f]
/opt/glusterfs/3.1.0/lib/glusterfs/3.1.0/rpc-transport/socket.so(socket_event_handler+0x168)[0x2aaaaeed54f8]
/opt/glusterfs/3.1.0/lib/libglusterfs.so.0[0x2b7a3236bee7]
/opt/glusterfs/3.1.0/sbin/glusterfs(main+0x37d)[0x40473d]
/lib64/libc.so.6(__libc_start_main+0xf4)[0x323cc1d994]
/opt/glusterfs/3.1.0/sbin/glusterfs[0x402de9]

Comment 1 Gaurav 2011-02-09 02:33:33 UTC
Its working fine with Cli as we generate volume_id and write it to volfile.
Since in NFS we always expect volume_id for Dynamic-volume = "on", we have to fail nfs_init if its not there, we can gracefully exit with proper error message whenever we don't find any volume_id in volfile.

Comment 2 Anand Avati 2011-02-11 03:18:15 UTC
PATCH: http://patches.gluster.com/patch/6154 in master (NFS : Fail Nfs init if volume-id not found.)

Comment 3 Saurabh 2011-03-11 03:26:14 UTC
Please update the target milestone

Comment 4 Saurabh 2011-03-11 06:46:51 UTC
Commented the volume id line was commented and then checked the nfs.log , and it disn't point any crash.


Note You need to log in before you can comment on or make changes to this bug.