diff --git a/core/src/main/java/com/datastax/oss/driver/internal/core/metadata/schema/queries/DefaultSchemaQueriesFactory.java b/core/src/main/java/com/datastax/oss/driver/internal/core/metadata/schema/queries/DefaultSchemaQueriesFactory.java index e537475ed7b..1f6911c6f46 100644 --- a/core/src/main/java/com/datastax/oss/driver/internal/core/metadata/schema/queries/DefaultSchemaQueriesFactory.java +++ b/core/src/main/java/com/datastax/oss/driver/internal/core/metadata/schema/queries/DefaultSchemaQueriesFactory.java @@ -51,12 +51,16 @@ public SchemaQueries newInstance() { .getMetadataManager() .getMetadata() .findNode(channel.getEndPoint()) - .orElseThrow( + .orElseGet( () -> - new IllegalStateException( - "Could not find control node metadata " - + channel.getEndPoint() - + ", aborting schema refresh")); + context.getMetadataManager().getMetadata().getNodes().values().stream() + .findFirst() + .orElseThrow( + () -> + new IllegalStateException( + "Could not find control node metadata " + + channel.getEndPoint() + + ", aborting schema refresh"))); return newInstance(node, channel); }