Description
I can’t connect to the serverless after uploading a large number of vectors with an error 503. The webpage says Your cluster is being prepared, it may take a few minutes.
Code and log:
client = weaviate.connect_to_wcs(
cluster_url=os.environ[“WEAVIATE_URL”],
auth_credentials=weaviate.auth.AuthApiKey(api_key=os.environ[“WEAVIATE_API_KEY”]),
)
UnexpectedStatusCodeError Traceback (most recent call last)
Cell In[7], line 1
----> 1 client = weaviate.connect_to_wcs(
2 cluster_url=os.environ[“WEAVIATE_URL”],
3 auth_credentials=weaviate.auth.AuthApiKey(api_key=os.environ[“WEAVIATE_API_KEY”]),
4 )
File c:\Users\anaconda3\Lib\site-packages\weaviate\connect\helpers.py:145, in connect_to_wcs(cluster_url, auth_credentials, headers, additional_config, skip_init_checks)
94 def connect_to_wcs(
95 cluster_url: str,
96 auth_credentials: Optional[AuthCredentials],
(…)
99 skip_init_checks: bool = False,
100 ) → WeaviateClient:
101 “”"
102 Connect to a Weaviate Cloud (WCD) instance. This method is deprecated and will be removed in a future release. Use connect_to_weaviate_cloud
instead.
103
(…)
143 >>> # The connection is automatically closed when the context is exited.
144 “”"
→ 145 return connect_to_weaviate_cloud(
146 cluster_url, auth_credentials, headers, additional_config, skip_init_checks
147 )
File c:\Users\anaconda3\Lib\site-packages\weaviate\connect\helpers.py:80, in connect_to_weaviate_cloud(cluster_url, auth_credentials, headers, additional_config, skip_init_checks)
34 “”"
35 Connect to a Weaviate Cloud (WCD) instance.
36
(…)
77 >>> # The connection is automatically closed when the context is exited.
78 “”"
79 cluster_url, grpc_host = __parse_weaviate_cloud_cluster_url(cluster_url)
—> 80 return __connect(
81 WeaviateClient(
82 connection_params=ConnectionParams(
83 http=ProtocolParams(host=cluster_url, port=443, secure=True),
84 grpc=ProtocolParams(host=grpc_host, port=443, secure=True),
85 ),
86 auth_client_secret=auth_credentials,
87 additional_headers=headers,
88 additional_config=additional_config,
89 skip_init_checks=skip_init_checks,
90 )
91 )
File c:\Users\anaconda3\Lib\site-packages\weaviate\connect\helpers.py:411, in __connect(client)
409 except Exception as e:
410 client.close()
→ 411 raise e
File c:\Users\anaconda3\Lib\site-packages\weaviate\connect\helpers.py:407, in __connect(client)
405 def __connect(client: WeaviateClient) → WeaviateClient:
406 try:
→ 407 client.connect()
408 return client
409 except Exception as e:
File c:\Users\anaconda3\Lib\site-packages\weaviate\syncify.py:23, in convert..sync_method(self, __new_name, *args, **kwargs)
20 @wraps(method) # type: ignore
21 def sync_method(self, *args, __new_name=new_name, **kwargs):
22 async_func = getattr(cls, __new_name)
—> 23 return _EventLoopSingleton.get_instance().run_until_complete(
24 async_func, self, *args, **kwargs
25 )
File c:\Users\anaconda3\Lib\site-packages\weaviate\event_loop.py:40, in _EventLoop.run_until_complete(self, f, *args, **kwargs)
38 raise WeaviateClosedClientError()
39 fut = asyncio.run_coroutine_threadsafe(f(*args, **kwargs), self.loop)
—> 40 return fut.result()
File c:\Users\anaconda3\Lib\concurrent\futures_base.py:456, in Future.result(self, timeout)
454 raise CancelledError()
455 elif self._state == FINISHED:
→ 456 return self.__get_result()
457 else:
458 raise TimeoutError()
File c:\Users\anaconda3\Lib\concurrent\futures_base.py:401, in Future.__get_result(self)
399 if self._exception:
400 try:
→ 401 raise self._exception
402 finally:
403 # Break a reference cycle with the exception in self._exception
404 self = None
File c:\Users\anaconda3\Lib\site-packages\weaviate\client_base.py:153, in _WeaviateClientBase.connect(self)
151 if self._connection.is_connected():
152 return
→ 153 await self._connection.connect(self._skip_init_checks)
File c:\Users\anaconda3\Lib\site-packages\weaviate\connect\v4.py:158, in ConnectionV4.connect(self, skip_init_checks)
156 # need this to get the version of weaviate for version checks
157 try:
→ 158 meta = await self.get_meta()
159 self._weaviate_version = _ServerVersion.from_string(meta[“version”])
160 except (
161 WeaviateConnectionError,
162 ReadError,
163 RemoteProtocolError,
164 SSLZeroReturnError, # required for async 3.8,3.9 due to ssl.SSLZeroReturnError: TLS/SSL connection has been closed (EOF) (_ssl.c:1131)
165 ) as e:
File c:\Users\anaconda3\Lib\site-packages\weaviate\connect\v4.py:587, in ConnectionV4.get_meta(self)
583 “”"
584 Returns the meta endpoint.
585 “”"
586 response = await self.get(path=“/meta”)
→ 587 res = _decode_json_response_dict(response, “Meta endpoint”)
588 assert res is not None
589 return res
File c:\Users\anaconda3\Lib\site-packages\weaviate\util.py:930, in _decode_json_response_dict(response, location)
927 except JSONDecodeError:
928 raise ResponseCannotBeDecodedError(location, response)
→ 930 raise UnexpectedStatusCodeError(location, response)
UnexpectedStatusCodeError: Meta endpoint! Unexpected status code: 503, with response body: None.
Server Setup Information
- Weaviate Server Version:
- Deployment Method: Weaviate Serverless Cloud
- Multi Node? Number of Running Nodes:
- Client Language and Version: Python v4 Client
- Multitenancy?:
Any additional Information
The upload broke in the middle, and after that the server was not accessible. Async was not used.