diff options
| author | hari gowtham <hgowtham@redhat.com> | 2017-11-24 11:47:01 +0530 | 
|---|---|---|
| committer | Atin Mukherjee <amukherj@redhat.com> | 2017-12-01 05:57:28 +0000 | 
| commit | 48e3ae7482a7c70dc130dc7f8198636a87649d54 (patch) | |
| tree | f1321e3c5cbb1faf59fcc70cb1736018dbfeee52 /xlators/cluster/dht/src | |
| parent | 5529659dec7607bf9b94ea2195672ae553458785 (diff) | |
Tier: Stop tierd for detach start
Problem: tierd was stopped only after detach commit
This makes the detach take a longer time. The detach
demotes the files to the cold brick and if the promotion
frequency is hit, then the tierd starts to promote files to
hot tier again.
Fix: stop tierd after detach start so the files get
demoted faster.
Note: the is_tier_enabled was not maintained properly.
That has been fixed too. some code clean up has been done.
Signed-off-by: hari gowtham <hgowtham@redhat.com>
Change-Id: I532f7410cea04fbb960105483810ea3560ca149b
BUG: 1446381
Diffstat (limited to 'xlators/cluster/dht/src')
| -rw-r--r-- | xlators/cluster/dht/src/dht-common.h | 13 | 
1 files changed, 10 insertions, 3 deletions
diff --git a/xlators/cluster/dht/src/dht-common.h b/xlators/cluster/dht/src/dht-common.h index 10c2e2089b8..d396c1d8173 100644 --- a/xlators/cluster/dht/src/dht-common.h +++ b/xlators/cluster/dht/src/dht-common.h @@ -405,10 +405,17 @@ enum gf_defrag_type {          GF_DEFRAG_CMD_PAUSE_TIER = 1 + 9,          GF_DEFRAG_CMD_RESUME_TIER = 1 + 10,          GF_DEFRAG_CMD_DETACH_STATUS = 1 + 11, -        GF_DEFRAG_CMD_DETACH_START = 1 + 12, -        GF_DEFRAG_CMD_DETACH_STOP = 1 + 13, +        GF_DEFRAG_CMD_STOP_TIER = 1 + 12, +        GF_DEFRAG_CMD_DETACH_START = 1 + 13, +        GF_DEFRAG_CMD_DETACH_COMMIT = 1 + 14, +        GF_DEFRAG_CMD_DETACH_COMMIT_FORCE = 1 + 15, +        GF_DEFRAG_CMD_DETACH_STOP = 1 + 16,          /* new labels are used so it will help -         * while removing old labels by easily differentiating +         * while removing old labels by easily differentiating. +         * A few labels are added so that the count remains same +         * between this enum and the ones on the xdr file. +         * different values for the same enum cause errors and +         * confusion.           */  };  typedef enum gf_defrag_type gf_defrag_type;  | 
