From cc3967db49e5983f43530708c1eb4b2708546ad9 Mon Sep 17 00:00:00 2001 From: Vikas Gorur Date: Mon, 30 Nov 2009 04:35:09 +0000 Subject: cluster/afr: Preserve generation number along with inode in lookup and creation fops. This fixes fuse_create_cbk conflict warnings and random errors while running dbench (typically open handle failure with ENOENT). Signed-off-by: Vikas Gorur Signed-off-by: Anand V. Avati BUG: 315 (generation number support) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=315 --- xlators/cluster/afr/src/afr.h | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'xlators/cluster/afr/src/afr.h') diff --git a/xlators/cluster/afr/src/afr.h b/xlators/cluster/afr/src/afr.h index 6a1c53cee..09f76351a 100644 --- a/xlators/cluster/afr/src/afr.h +++ b/xlators/cluster/afr/src/afr.h @@ -254,6 +254,7 @@ typedef struct _afr_local { struct stat read_child_buf; struct stat postparent; ino_t ino; + uint64_t gen; ino_t parent_ino; dict_t *xattr; gf_boolean_t is_revalidate; @@ -404,6 +405,7 @@ typedef struct _afr_local { struct { ino_t ino; + uint64_t gen; ino_t parent_ino; fd_t *fd; int32_t flags; @@ -417,6 +419,7 @@ typedef struct _afr_local { struct { ino_t ino; + uint64_t gen; ino_t parent_ino; dev_t dev; mode_t mode; @@ -429,6 +432,7 @@ typedef struct _afr_local { struct { ino_t ino; + uint64_t gen; ino_t parent_ino; int32_t mode; inode_t *inode; @@ -468,6 +472,7 @@ typedef struct _afr_local { struct { ino_t ino; + uint64_t gen; ino_t parent_ino; inode_t *inode; struct stat buf; @@ -478,6 +483,7 @@ typedef struct _afr_local { struct { ino_t ino; + uint64_t gen; ino_t parent_ino; inode_t *inode; struct stat buf; -- cgit