diff options
Diffstat (limited to 'xlators/cluster/dht/src/dht-shared.c')
-rw-r--r-- | xlators/cluster/dht/src/dht-shared.c | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/xlators/cluster/dht/src/dht-shared.c b/xlators/cluster/dht/src/dht-shared.c index 042adf1714b..3b22a2a8486 100644 --- a/xlators/cluster/dht/src/dht-shared.c +++ b/xlators/cluster/dht/src/dht-shared.c @@ -589,6 +589,23 @@ dht_init (xlator_t *this) defrag->cmd = cmd; defrag->stats = _gf_false; + + defrag->queue = NULL; + + defrag->crawl_done = 0; + + defrag->global_error = 0; + + defrag->q_entry_count = 0; + + defrag->wakeup_crawler = 0; + + synclock_init (&defrag->link_lock, SYNC_LOCK_DEFAULT); + pthread_mutex_init (&defrag->dfq_mutex, 0); + pthread_cond_init (&defrag->parallel_migration_cond, 0); + pthread_cond_init (&defrag->rebalance_crawler_alarm, 0); + defrag->global_error = 0; + } conf->search_unhashed = GF_DHT_LOOKUP_UNHASHED_ON; @@ -651,6 +668,15 @@ dht_init (xlator_t *this) goto err; } + if (cmd) { + ret = dht_init_local_subvolumes (this, conf); + if (ret) { + gf_log (this->name, GF_LOG_ERROR, + "dht_init_local_subvolumes failed"); + goto err; + } + } + if (dict_get_str (this->options, "decommissioned-bricks", &temp_str) == 0) { ret = dht_parse_decommissioned_bricks (this, conf, temp_str); if (ret == -1) |