diff options
| author | Kinglong Mee <kinglongmee@gmail.com> | 2019-04-25 18:20:25 +0800 | 
|---|---|---|
| committer | Xavi Hernandez <xhernandez@redhat.com> | 2019-05-06 10:56:13 +0000 | 
| commit | 0d85c6abf5002ff88f17a5292cdde45847154d25 (patch) | |
| tree | 7bf52a8697b67c76fc95d3fb661f07685bf93e27 | |
| parent | e18e98659dd2b41eb59cf593fd625f1821a20abf (diff) | |
cluster/ec: fix shd healer wait timeout
Right now, the timeout is written by hard code,
fix it by using heal-timeout.
fixes: bz#1703020
Change-Id: I0d154e7807f9dba7efc3896805559bbfaa7af2ad
Signed-off-by: Kinglong Mee <kinglongmee@gmail.com>
| -rw-r--r-- | xlators/cluster/ec/src/ec-heald.c | 2 | ||||
| -rw-r--r-- | xlators/cluster/ec/src/ec.c | 1 | 
2 files changed, 2 insertions, 1 deletions
diff --git a/xlators/cluster/ec/src/ec-heald.c b/xlators/cluster/ec/src/ec-heald.c index cba111a3e8f..67c8072a01e 100644 --- a/xlators/cluster/ec/src/ec-heald.c +++ b/xlators/cluster/ec/src/ec-heald.c @@ -63,7 +63,7 @@ __ec_shd_healer_wait(struct subvol_healer *healer)      ec = healer->this->private;  disabled_loop: -    wait_till.tv_sec = time(NULL) + 60; +    wait_till.tv_sec = time(NULL) + ec->shd.timeout;      while (!healer->rerun) {          ret = pthread_cond_timedwait(&healer->cond, &healer->mutex, &wait_till); diff --git a/xlators/cluster/ec/src/ec.c b/xlators/cluster/ec/src/ec.c index 3c8013e8297..9e37f5e40f6 100644 --- a/xlators/cluster/ec/src/ec.c +++ b/xlators/cluster/ec/src/ec.c @@ -714,6 +714,7 @@ init(xlator_t *this)      if (ec_assign_read_policy(ec, read_policy))          goto failed; +    GF_OPTION_INIT("heal-timeout", ec->shd.timeout, int32, failed);      GF_OPTION_INIT("shd-max-threads", ec->shd.max_threads, uint32, failed);      GF_OPTION_INIT("shd-wait-qlength", ec->shd.wait_qlength, uint32, failed);      GF_OPTION_INIT("optimistic-change-log", ec->optimistic_changelog, bool,  | 
