Buggy code:
public class DomainModelControllerService extends AbstractControllerService implements DomainController { public static final ServiceName SERVICE_NAME = HC_SERVICE_NAME . append ( "model" , "controller" ) ; private HostControllerConfigurationPersister hostControllerConfigurationPersister ; private final HostControllerEnvironment environment ; private final HostRunningModeControl runningModeControl ; private final LocalHostControllerInfoImpl hostControllerInfo ; private final HostFileRepository localFileRepository ; private final RemoteFileRepository remoteFileRepository ; private final InjectedValue < ProcessControllerConnectionService > injectedProcessControllerConnection = new InjectedValue < ProcessControllerConnectionService > ( ) ; private final Map < String , ProxyController > hostProxies ; private final Map < String , ProxyController > serverProxies ; private final PrepareStepHandler prepareStepHandler ; private final BootstrapListener bootstrapListener ; private ManagementResourceRegistration modelNodeRegistration ; final ThreadFactory threadFactory = new JBossThreadFactory ( new ThreadGroup ( "proxy-threads" ) , Boolean . FALSE , null , "%G<seq2seq4repair_space>-<seq2seq4repair_space>%t" , null , null , AccessController . getContext ( ) ) ; private final ExecutorService proxyExecutor = Executors . newCachedThreadPool ( threadFactory ) ; private final AbstractVaultReader vaultReader ; private final ContentRepository contentRepository ; private final ExtensionRegistry extensionRegistry ; private final ControlledProcessState processState ; private final IgnoredDomainResourceRegistry ignoredRegistry ; private volatile ServerInventory serverInventory ; public static ServiceController < ModelController > addService ( final ServiceTarget serviceTarget , final HostControllerEnvironment environment , final HostRunningModeControl runningModeControl , final ControlledProcessState processState , final BootstrapListener bootstrapListener ) { } private DomainModelControllerService ( final HostControllerEnvironment environment , final HostRunningModeControl runningModeControl , final ControlledProcessState processState , final LocalHostControllerInfoImpl hostControllerInfo , final ContentRepository contentRepository , final Map < String , ProxyController > hostProxies , final Map < String , ProxyController > serverProxies , final PrepareStepHandler prepareStepHandler , final AbstractVaultReader vaultReader , final IgnoredDomainResourceRegistry ignoredRegistry , final BootstrapListener bootstrapListener ) { } @ Override public LocalHostControllerInfo getLocalHostInfo ( ) { } @ Override public void registerRemoteHost ( ProxyController hostControllerClient ) throws SlaveRegistrationException { } @ Override public boolean isHostRegistered ( String id ) { } @ Override public void unregisterRemoteHost ( String id ) { } @ Override public void registerRunningServer ( ProxyController serverControllerClient ) { } @ Override public void unregisterRunningServer ( String serverName ) { } @ Override public ModelNode getProfileOperations ( String profileName ) { } @ Override public HostFileRepository getLocalFileRepository ( ) { } @ Override public HostFileRepository getRemoteFileRepository ( ) { } @ Override public void start ( StartContext context ) throws StartException { } @ Override protected void initModel ( Resource rootResource , ManagementResourceRegistration rootRegistration ) { } @ Override protected void boot ( final BootContext context ) throws ConfigurationPersistenceException { final ServiceTarget serviceTarget = context . getServiceTarget ( ) ; try { super . boot ( hostControllerConfigurationPersister . load ( ) ) ; final RunningMode currentRunningMode = runningModeControl . getRunningMode ( ) ; ManagementRemotingServices . installRemotingEndpoint ( serviceTarget , MANAGEMENT_ENDPOINT , hostControllerInfo . getLocalHostName ( ) , MANAGEMENT , null , null ) ; ManagementChannelRegistryService . addService ( serviceTarget ) ; Future < ServerInventory > inventoryFuture = ServerInventoryService . install ( serviceTarget , this , runningModeControl , environment , hostControllerInfo . getNativeManagementInterface ( ) , hostControllerInfo . getNativeManagementPort ( ) ) ; if ( ( ! ( hostControllerInfo . isMasterDomainController ( ) ) ) && ( ! ( environment . isUseCachedDc ( ) ) ) ) { serverInventory = getFuture ( inventoryFuture ) ; if ( ( hostControllerInfo . getRemoteDomainControllerHost ( ) ) != null ) { Future < MasterDomainControllerClient > clientFuture = RemoteDomainConnectionService . install ( serviceTarget , getValue ( ) , hostControllerInfo , environment . getProductConfig ( ) , hostControllerInfo . getRemoteDomainControllerSecurityRealm ( ) , remoteFileRepository ) ; MasterDomainControllerClient masterDomainControllerClient = getFuture ( clientFuture ) ; try { masterDomainControllerClient . register ( ) ; <START_BUG> } catch ( IllegalStateException e ) { <END_BUG> HostControllerLogger . ROOT_LOGGER . cannotConnectToMaster ( e ) ; System . exit ( HOST_CONTROLLER_ABORT_EXIT_CODE ) ; } } else if ( currentRunningMode != ( RunningMode . ADMIN_ONLY ) ) { HostControllerLogger . ROOT_LOGGER . noDomainControllerConfigurationProvided ( currentRunningMode , ADMIN_ONLY , RunningMode . ADMIN_ONLY ) ; System . exit ( HOST_CONTROLLER_ABORT_EXIT_CODE ) ; } } else { ConfigurationPersister domainPersister = hostControllerConfigurationPersister . getDomainPersister ( ) ; super . boot ( domainPersister . load ( ) ) ; ManagementRemotingServices . installManagementChannelServices ( serviceTarget , MANAGEMENT_ENDPOINT , new MasterDomainControllerOperationHandlerService ( this ) , DomainModelControllerService . SERVICE_NAME , DOMAIN_CHANNEL , null , null ) ; serverInventory = getFuture ( inventoryFuture ) ; } ServerToHostOperationHandlerFactoryService . install ( serviceTarget , ServerInventoryService . SERVICE_NAME , proxyExecutor , localFileRepository ) ; NativeManagementAddHandler . installNativeManagementServices ( serviceTarget , hostControllerInfo , null , null ) ; if ( ( hostControllerInfo . getHttpManagementInterface ( ) ) != null ) { HttpManagementAddHandler . installHttpManagementServices ( currentRunningMode , serviceTarget , hostControllerInfo , environment , null ) ; } if ( currentRunningMode == ( RunningMode . NORMAL ) ) { startServers ( ) ; } } finally { try { finishBoot ( ) ; } finally { bootstrapListener . tick ( ) ; } } } private < T > T getFuture ( Future < T > future ) { } private void startServers ( ) { } @ Override public void stop ( StopContext context ) { } @ Override public void stopLocalHost ( ) { } @ Override public void stopLocalHost ( int exitCode ) { } private class DelegatingServerInventory implements ServerInventory { public void serverCommunicationRegistered ( String serverProcessName , ManagementChannelHandler channelHandler , ProxyCreatedCallback callback ) { } public void serverProcessAdded ( String serverProcessName ) { } public void serverStartFailed ( String serverProcessName ) { } @ Override public void serverStarted ( String serverProcessName ) { } public void serverProcessStopped ( String serverProcessName ) { } public String getServerProcessName ( String serverName ) { } public String getProcessServerName ( String processName ) { } public void processInventory ( Map < String , ProcessInfo > processInfos ) { } public Map < String , ProcessInfo > determineRunningProcesses ( ) { } public Map < String , ProcessInfo > determineRunningProcesses ( boolean serversOnly ) { } public ServerStatus determineServerStatus ( String serverName ) { } public int hashCode ( ) { } public ServerStatus startServer ( String serverName , ModelNode domainModel ) { }

Fix:
} catch ( IOException e ) {