Bug 837495

Summary: linux-aio support in storage/posix
Product: [Community] GlusterFS Reporter: Anand Avati <aavati>
Component: posixAssignee: Vijay Bellur <vbellur>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: mainlineCC: chrisw, gluster-bugs, redhat.bugs
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Fixed In Version: glusterfs-3.4.0 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
: 856467 (view as bug list) Environment:
Last Closed: 2013-07-24 13:48:04 EDT Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---
Bug Depends On:    
Bug Blocks: 852277, 856467, 906181    

Description Anand Avati 2012-07-04 02:13:16 EDT
Support for native Linux AIO in storage/posix translator
Comment 1 Vijay Bellur 2012-07-14 21:09:16 EDT
CHANGE: http://review.gluster.com/3627 (storage/posix: implement native linux AIO support) merged in master by Anand Avati (avati@redhat.com)
Comment 2 Vijay Bellur 2012-08-27 11:08:54 EDT
CHANGE: http://review.gluster.org/3849 (storage/posix: implement native linux AIO support) merged in release-3.3 by Vijay Bellur (vbellur@redhat.com)
Comment 3 Richard 2013-01-23 16:04:22 EST
I've just upgraded to 3.3.1-8.fc18 and I now get Fsync failures when saving files when storage.linux-aio is activated:

[root@recon glusterfs]# gluster vol info

Volume Name: md0
Type: Distribute
Volume ID: ef96e861-ffa7-4db9-bdc8-528e3e2941bc
Status: Started
Number of Bricks: 1
Transport-type: tcp
Options Reconfigured:
storage.linux-aio: on
auth.allow: 169.254.*
nfs.disable: on

I tried to save a file in vi and got this error:

"test" E667: Fsync failed

I see this in the logs:

[2013-01-23 20:40:57.096215] I [rpc-clnt.c:1657:rpc_clnt_reconfig] 0-md0-client-0: changing port to 24009 (from 0)
[2013-01-23 20:41:00.099360] I [client-handshake.c:1636:select_server_supported_programs] 0-md0-client-0: Using Program GlusterFS 3.3.1, Num (1298437), Version (330)
[2013-01-23 20:41:00.103201] I [client-handshake.c:1433:client_setvolume_cbk] 0-md0-client-0: Connected to, attached to remote volume '/mnt/md0/brick1'.
[2013-01-23 20:41:00.103306] I [client-handshake.c:1445:client_setvolume_cbk] 0-md0-client-0: Server and Client lk-version numbers are not same, reopening the fds
[2013-01-23 20:41:00.109724] I [fuse-bridge.c:4191:fuse_graph_setup] 0-fuse: switched to graph 0
[2013-01-23 20:41:00.109987] I [client-handshake.c:453:client_set_lk_version_cbk] 0-md0-client-0: Server lk version = 1
[2013-01-23 20:41:00.110066] I [fuse-bridge.c:3376:fuse_init] 0-glusterfs-fuse: FUSE inited with protocol versions: glusterfs 7.13 kernel 7.20
[2013-01-23 20:52:45.615184] W [client3_1-fops.c:821:client3_1_writev_cbk] 0-md0-client-0: remote operation failed: Invalid argument
[2013-01-23 20:52:45.615298] W [fuse-bridge.c:968:fuse_err_cbk] 0-glusterfs-fuse: 89: FLUSH() ERR => -1 (Invalid argument)
[2013-01-23 21:01:21.616271] W [client3_1-fops.c:821:client3_1_writev_cbk] 0-md0-client-0: remote operation failed: Invalid argument
[2013-01-23 21:01:21.675241] W [fuse-bridge.c:968:fuse_err_cbk] 0-glusterfs-fuse: 239: FSYNC() ERR => -1 (Invalid argument)

I can "touch" files ok, but not save anything with content. For example, if file "test" doesn't exist and I do "echo > 1 test" the file is created but its empty.

Comment 4 Anand Avati 2013-10-17 07:11:43 EDT
REVIEW: http://review.gluster.org/6077 (posix: Fix readv FOP) posted (#2) for review on master by Vijay Bellur (vbellur@redhat.com)
Comment 5 Anand Avati 2013-10-17 07:15:31 EDT
COMMIT: http://review.gluster.org/6077 committed in master by Vijay Bellur (vbellur@redhat.com) 
commit 390221fcc4cc974074750be223e551bd9f4405d9
Author: M. Mohan Kumar <mohan@in.ibm.com>
Date:   Fri Oct 11 17:29:10 2013 +0530

    posix: Fix readv FOP
    Suggested by Anand Avati in BD xlator code review.
    Change-Id: I31c353a26dfdeb3d0023c3f7e03ed25461d13c16
    Signed-off-by: M. Mohan Kumar <mohan@in.ibm.com>
    BUG: 837495
    Reviewed-on: http://review.gluster.org/6077
    Reviewed-by: Vijay Bellur <vbellur@redhat.com>
    Tested-by: Vijay Bellur <vbellur@redhat.com>