Compare commits

..

2 Commits

Author SHA1 Message Date
Lance Release
1ae08fe31d [python] Bump version: 0.6.2 → 0.6.3 2024-03-11 20:16:36 +00:00
Rob Meng
a517629c65 feat: configurable timeout for LanceDB Cloud queries (#1090) 2024-03-11 16:15:48 -04:00
6 changed files with 23 additions and 11 deletions

View File

@@ -1,5 +1,5 @@
[bumpversion]
current_version = 0.6.2
current_version = 0.6.3
commit = True
message = [python] Bump version: {current_version} → {new_version}
tag = True

View File

@@ -1,6 +1,6 @@
[project]
name = "lancedb"
version = "0.6.2"
version = "0.6.3"
dependencies = [
"deprecation",
"pylance==0.10.2",

View File

@@ -35,6 +35,7 @@ def connect(
host_override: Optional[str] = None,
read_consistency_interval: Optional[timedelta] = None,
request_thread_pool: Optional[Union[int, ThreadPoolExecutor]] = None,
**kwargs,
) -> DBConnection:
"""Connect to a LanceDB database.
@@ -99,7 +100,12 @@ def connect(
if isinstance(request_thread_pool, int):
request_thread_pool = ThreadPoolExecutor(request_thread_pool)
return RemoteDBConnection(
uri, api_key, region, host_override, request_thread_pool=request_thread_pool
uri,
api_key,
region,
host_override,
request_thread_pool=request_thread_pool,
**kwargs,
)
return LanceDBConnection(uri, read_consistency_interval=read_consistency_interval)

View File

@@ -58,6 +58,9 @@ class RestfulLanceDBClient:
closed: bool = attrs.field(default=False, init=False)
connection_timeout: float = attrs.field(default=120.0, kw_only=True)
read_timeout: float = attrs.field(default=300.0, kw_only=True)
@functools.cached_property
def session(self) -> requests.Session:
sess = requests.Session()
@@ -117,7 +120,7 @@ class RestfulLanceDBClient:
urljoin(self.url, uri),
params=params,
headers=self.headers,
timeout=(120.0, 300.0),
timeout=(self.connection_timeout, self.read_timeout),
) as resp:
self._check_status(resp)
return resp.json()
@@ -159,7 +162,7 @@ class RestfulLanceDBClient:
urljoin(self.url, uri),
headers=headers,
params=params,
timeout=(120.0, 300.0),
timeout=(self.connection_timeout, self.read_timeout),
**req_kwargs,
) as resp:
self._check_status(resp)

View File

@@ -41,6 +41,8 @@ class RemoteDBConnection(DBConnection):
region: str,
host_override: Optional[str] = None,
request_thread_pool: Optional[ThreadPoolExecutor] = None,
connection_timeout: float = 120.0,
read_timeout: float = 300.0,
):
"""Connect to a remote LanceDB database."""
parsed = urlparse(db_url)
@@ -49,7 +51,12 @@ class RemoteDBConnection(DBConnection):
self.db_name = parsed.netloc
self.api_key = api_key
self._client = RestfulLanceDBClient(
self.db_name, region, api_key, host_override
self.db_name,
region,
api_key,
host_override,
connection_timeout=connection_timeout,
read_timeout=read_timeout,
)
self._request_thread_pool = request_thread_pool

View File

@@ -68,14 +68,10 @@ class RemoteTable(Table):
def list_indices(self):
"""List all the indices on the table"""
print(self._name)
resp = self._conn._client.post(f"/v1/table/{self._name}/index/list/")
return resp
def index_stats(self, index_uuid: str):
"""List all the indices on the table"""
resp = self._conn._client.post(f"/v1/table/{self._name}/index/{index_uuid}/stats/")
return resp
def create_scalar_index(
self,
column: str,