[Discovery] Made 'discovery.zen.rejoin_on_master_gone' setting updatable at runtime.
This commit is contained in:
parent
424a2f68c6
commit
1849d0966c
|
@ -76,6 +76,8 @@ import static org.elasticsearch.common.unit.TimeValue.timeValueSeconds;
|
|||
*/
|
||||
public class ZenDiscovery extends AbstractLifecycleComponent<Discovery> implements Discovery, DiscoveryNodesProvider {
|
||||
|
||||
private final static String REJOIN_ON_MASTER_GONE = "discovery.zen.rejoin_on_master_gone";
|
||||
|
||||
public static final String DISCOVERY_REJOIN_ACTION_NAME = "internal:discovery/zen/rejoin";
|
||||
|
||||
private final ThreadPool threadPool;
|
||||
|
@ -117,7 +119,7 @@ public class ZenDiscovery extends AbstractLifecycleComponent<Discovery> implemen
|
|||
|
||||
private final AtomicBoolean initialStateSent = new AtomicBoolean();
|
||||
|
||||
private final boolean rejoinOnMasterGone;
|
||||
private volatile boolean rejoinOnMasterGone;
|
||||
|
||||
|
||||
@Nullable
|
||||
|
@ -144,7 +146,7 @@ public class ZenDiscovery extends AbstractLifecycleComponent<Discovery> implemen
|
|||
|
||||
this.masterElectionFilterClientNodes = settings.getAsBoolean("discovery.zen.master_election.filter_client", true);
|
||||
this.masterElectionFilterDataNodes = settings.getAsBoolean("discovery.zen.master_election.filter_data", false);
|
||||
this.rejoinOnMasterGone = settings.getAsBoolean("discovery.zen.rejoin_on_master_gone", true);
|
||||
this.rejoinOnMasterGone = settings.getAsBoolean(REJOIN_ON_MASTER_GONE, true);
|
||||
|
||||
logger.debug("using ping.timeout [{}], join.timeout [{}], master_election.filter_client [{}], master_election.filter_data [{}]", pingTimeout, joinTimeout, masterElectionFilterClientNodes, masterElectionFilterDataNodes);
|
||||
|
||||
|
@ -1015,6 +1017,12 @@ public class ZenDiscovery extends AbstractLifecycleComponent<Discovery> implemen
|
|||
ZenDiscovery.this.electMaster.minimumMasterNodes(), minimumMasterNodes);
|
||||
handleMinimumMasterNodesChanged(minimumMasterNodes);
|
||||
}
|
||||
|
||||
boolean rejoinOnMasterGone = settings.getAsBoolean(REJOIN_ON_MASTER_GONE, ZenDiscovery.this.rejoinOnMasterGone);
|
||||
if (rejoinOnMasterGone != ZenDiscovery.this.rejoinOnMasterGone) {
|
||||
logger.info("updating {} from [{}] to [{}]", REJOIN_ON_MASTER_GONE, ZenDiscovery.this.rejoinOnMasterGone, rejoinOnMasterGone);
|
||||
ZenDiscovery.this.rejoinOnMasterGone = rejoinOnMasterGone;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue