diff options
Diffstat (limited to 'xlators/cluster/afr/src/afr-self-heal-data.c')
| -rw-r--r-- | xlators/cluster/afr/src/afr-self-heal-data.c | 6 | 
1 files changed, 6 insertions, 0 deletions
diff --git a/xlators/cluster/afr/src/afr-self-heal-data.c b/xlators/cluster/afr/src/afr-self-heal-data.c index 13679608dfd..2c254e80aa1 100644 --- a/xlators/cluster/afr/src/afr-self-heal-data.c +++ b/xlators/cluster/afr/src/afr-self-heal-data.c @@ -581,6 +581,12 @@ __afr_selfheal_data_finalize_source (call_frame_t *frame, xlator_t *this,          afr_mark_largest_file_as_source (this, sources, replies);          afr_mark_biggest_witness_as_source (this, sources, witness);          afr_mark_newest_file_as_source (this, sources, replies); +        if (priv->arbiter_count) +                /* Choose non-arbiter brick as source for empty files. */ +                afr_mark_source_sinks_if_file_empty (this, sources, sinks, +                                                     healed_sinks, locked_on, +                                                     replies, +                                                     AFR_DATA_TRANSACTION);  out:          afr_mark_active_sinks (this, sources, locked_on, healed_sinks);  | 
