docs: public Mono<List<RedisNodeDescription>> getNodes(RedisURI seed) {
  
          CompletableFuture<List<RedisNodeDescription>> future = topologyProvider.getNodesAsync();
  
          Mono<List<RedisNodeDescription>> initialNodes = Mono.fromFuture(future).doOnNext(nodes -> {
              addPasswordIfNeeded(nodes, seed);
          });
  
          return initialNodes
                  .map(this::getConnections)
                  .flatMap(asyncConnections -> asyncConnections.asMono(seed.getTimeout(), eventExecutors))
                  .flatMap(
                          connections -> {
  
                              Requests requests = connections.requestPing();
  
                              CompletionStage<List<RedisNodeDescription>> nodes = requests.getOrTimeout(seed.getTimeout(),
                                      eventExecutors);
  
                              return Mono.fromCompletionStage(nodes).flatMap(it -> ResumeAfter.close(connections).thenEmit(it));
                          });
      }