Exemplo n.º 1
0
        async Task IBootstrappable.BootStrapAsync()
        {
            try
            {
                await _context.BootstrapGlobalAsync().ConfigureAwait(false);

                //if we succeeded set the state of the cluster to bootstrapped
                _hasBootStrapped = _context.GlobalConfig != null;
                _deferredExceptions.Clear();

                UpdateClusterCapabilities();
            }
            catch (AuthenticationFailureException e)
            {
                _deferredExceptions.Add(e);

                //auth failed so bubble up exception and clean up resources
                _logger.LogError(e,
                                 "Could not authenticate user {username}",
                                 _redactor.UserData(_context.ClusterOptions.UserName ?? string.Empty));

                _context.RemoveAllNodes();
                throw;
            }
            catch (Exception e)
            {
                _logger.LogDebug("Error encountered bootstrapping cluster; if the cluster is 6.5 or earlier, this can be ignored. {exception}.", e);
            }
        }