diff options
author | Amar Tumballi <amar@gluster.com> | 2010-07-14 13:58:20 +0000 |
---|---|---|
committer | Anand V. Avati <avati@dev.gluster.com> | 2010-07-14 14:44:26 -0700 |
commit | 654a720eed0bc5faaeeaa4eb34f1cfc10df76230 (patch) | |
tree | b84419d192c46e39a40b7a3133666ddde453aba2 /xlators/cluster/dht/src/dht-common.h | |
parent | e73a856e926465068f6f6cf5a0cace501589957c (diff) |
proper way to do defrag of a mountpoint
Usage: "glusterfs-defrag <MOUNTPOINT>"
there are new features added to distribute with this patch:
* bash# getfattr -n trusted.distribute.linkinfo <file>
Gives output in the format "<hostname>:<directory>", if there is a
linkfile present, where hostname is server, directory is backend
directory where the actual linkfile is present.
* bash# getfattr -n trusted.glusterfs.pathinfo <path>
Gives layout information if directory, and info about actual
location of file in backend servers, in the form of
'hostname:directory'. (TODO: should extend it to all xlators)
* bash# getfattr -n trusted.distribute.fix.layout <path>
scales out the directory layout in distribute, so when new
servers are added, layouts are fixed to include them.
* removed 'scale-n-defrag.sh' as its no more required.
* changed 'defrag.sh' to have a feature to specify target bricks,
so defrag happens to only those nodes. moved the file to
'glusterfs-defrag', which now gets installed to '${prefix}/bin'
* storage/posix:
takes new option 'hostname' so it can resolve to same hostname
given during 'gluster volume create'.
with 'trusted.glusterfs.pathinfo' posix returns the value in
'hostname:real_path' format.
Signed-off-by: Amar Tumballi <amar@gluster.com>
Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
BUG: 1073 ('gluster defrag <VOLNAME>' fails in mainline)
URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=1073
Diffstat (limited to 'xlators/cluster/dht/src/dht-common.h')
-rw-r--r-- | xlators/cluster/dht/src/dht-common.h | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/xlators/cluster/dht/src/dht-common.h b/xlators/cluster/dht/src/dht-common.h index b361f1442..d5a5c7b2c 100644 --- a/xlators/cluster/dht/src/dht-common.h +++ b/xlators/cluster/dht/src/dht-common.h @@ -27,6 +27,7 @@ #ifndef _DHT_H #define _DHT_H +#define GF_XATTR_FIX_LAYOUT_KEY "trusted.distribute.fix.layout" #define GF_DHT_LOOKUP_UNHASHED_ON 1 #define GF_DHT_LOOKUP_UNHASHED_AUTO 2 @@ -116,6 +117,10 @@ struct dht_local { int32_t flags; mode_t mode; dev_t rdev; + + /* need for file-info */ + char *pathinfo; + char *key; }; typedef struct dht_local dht_local_t; |