summaryrefslogtreecommitdiffstats
path: root/xlators/cluster/dht/src/dht-common.h
diff options
context:
space:
mode:
authorAnand V. Avati <avati@gluster.com>2009-03-25 18:08:43 +0530
committerAnand V. Avati <avati@amp.gluster.com>2009-03-26 17:09:08 +0530
commit36e39bf9cb4b7c712ef411d60203bf05af7e129f (patch)
tree562af406abb9647b1e1dcd43458abfb5f67e8ab5 /xlators/cluster/dht/src/dht-common.h
parenta2d44f8cd32988ad52ad924b61a2ef5fc41e4b0e (diff)
Enhancements to distribute selfheal
- create missing directories instead of creating linkfiles when entry missing on hashed subvol - detect cases where there are dirs and linkfiles for a name and make them all dirs Signed-off-by: Anand V. Avati <avati@amp.gluster.com>
Diffstat (limited to 'xlators/cluster/dht/src/dht-common.h')
-rw-r--r--xlators/cluster/dht/src/dht-common.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/xlators/cluster/dht/src/dht-common.h b/xlators/cluster/dht/src/dht-common.h
index ed154dc1266..0eb57a196c3 100644
--- a/xlators/cluster/dht/src/dht-common.h
+++ b/xlators/cluster/dht/src/dht-common.h
@@ -70,6 +70,8 @@ struct dht_local {
xlator_t *cached_subvol;
xlator_t *hashed_subvol;
char need_selfheal;
+ int file_count;
+ int dir_count;
struct {
fop_mknod_cbk_t linkfile_cbk;
struct stat stbuf;
@@ -200,6 +202,8 @@ int dht_hash_compute (int type, const char *name, uint32_t *hash_p);
int dht_linkfile_create (call_frame_t *frame, fop_mknod_cbk_t linkfile_cbk,
xlator_t *tovol, xlator_t *fromvol, loc_t *loc);
+int dht_lookup_directory (call_frame_t *frame, xlator_t *this, loc_t *loc);
+int dht_lookup_everywhere (call_frame_t *frame, xlator_t *this, loc_t *loc);
int
dht_selfheal_directory (call_frame_t *frame, dht_selfheal_dir_cbk_t cbk,
loc_t *loc, dht_layout_t *layout);