diff --git a/src/main/java/io/qdrant/client/QdrantGrpcClient.java b/src/main/java/io/qdrant/client/QdrantGrpcClient.java index 5db3425..fc4139e 100644 --- a/src/main/java/io/qdrant/client/QdrantGrpcClient.java +++ b/src/main/java/io/qdrant/client/QdrantGrpcClient.java @@ -288,6 +288,11 @@ public QdrantGrpcClient build() { private static ManagedChannel createChannel( String host, int port, boolean useTransportLayerSecurity, String userAgent) { + if (host.indexOf(':') >= 0 && !host.startsWith("[")) { + // Bare IPv6 literal: gRPC parses the channel target as a URI, so the host + // must be bracketed (e.g. "[fd00::1]"). + host = "[" + host + "]"; + } ManagedChannelBuilder channelBuilder = ManagedChannelBuilder.forAddress(host, port); if (useTransportLayerSecurity) {