Restores the log files from one of the members of the replication group.
If config.getLogProviders()
returns null, or an empty list, it uses the member that is least busy as the provider of the log files. Otherwise it selects a member from the list, choosing the first member that's available, to provide the log files. If the members in this list are not present in logException.getLogProviders()
, it will result in an IllegalArgumentException
being thrown. Exceptions handlers for InsufficientLogException
will typically use {@link InsufficientLogException#getLogProviders()} as thestarting point to compute an appropriate list, with which to set up the config
argument.
Log files that are currently at the node will be retained if they are part of a consistent set of log files. Obsolete log files are either deleted, or are renamed based on the the configuration of config.getRetainLogFiles()
.
@param logException the exception thrown by {@code ReplicatedEnvironment()} that necessitated this log refresh operation
@param config configures the execution of the network restore operation
@throws EnvironmentFailureException if an unexpected, internal orenvironment-wide failure occurs.
@throws IllegalArgumentException if the config
is invalid
@see NetworkRestoreConfig