Node name error on query - using embedded client on an existing collection

Description

Experimenting with embedded client using it to query an existing collection created using docker.

Both deployment methods use the same server version and clients. The hostname variable on the embedded client is set to 0.0.0.0. The cluster hostname on the docker used to build the collection is set to ‘node1’ - no cluster hostname has been set for the embedded client (not sure if this is possible via variables and may be the source of the problem).

The embedded client connects to the collection but throws out the exception error below. Any suggestions on solutions would be appreciated. Thanks!

Server Setup Information

  • Weaviate Server Version: 1.26.5
  • Deployment Method: docker + embedded
  • Multi Node? Number of Running Nodes: 1
  • Client Language and Version: python v4
  • Multitenancy?: no

Any additional Information

Error message:
weaviate.exceptions.WeaviateQueryError: Query call with protocol GRPC search failed with message <AioRpcError of RPC that terminated with: status = StatusCode.UNKNOWN details = “explorer: get class: vector search: object vector search at index docdata: remote shard 5Mo7r7gjuvIl: resolve node name “node1” to host” debug_error_string = “UNKNOWN:Error received from peer {created_time:“2025-01-18T14:55:46.680197+09:00”, grpc_status:2, grpc_message:“explorer: get class: vector search: object vector search at index docdata: remote shard 5Mo7r7gjuvIl: resolve node name "node1" to host”}” >.

Was able to make some progress on this by explicitly setting environment variables as below. Experimenting continues …

hostname=“127.0.0.1”,
additional_env_vars={
“CLUSTER_HOSTNAME”: “node1”,
“RAFT_JOIN”: “node1”,
“CLUSTER_GOSSIP_BIND_PORT”: “7100”,
“CLUSTER_DATA_BIND_PORT”: ‘7101’,
“RAFT_BOOTSTRAP_EXPECT”: ‘1’,
“ENABLE_TOKENIZER_GSE”: “true”

1 Like

hi!

Thanks for sharing.

Also one suggestion: if using the Embedded Weaviate, specify the version you want.

Otherwise it can be used an old one.

You can, but should not use “last” as version or the embedded, but it may sometimes get a patch released after the latest.

And finally, note that Embedded is experimental. And there is are some bugs :slight_smile: