Skip to content

Commit 0189b4b

Browse files
author
Nikos Papailiou
committed
Use with to open updates array
1 parent ac3dbbf commit 0189b4b

File tree

1 file changed

+18
-13
lines changed

1 file changed

+18
-13
lines changed

apis/python/src/tiledb/vector_search/ingestion.py

Lines changed: 18 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -695,11 +695,11 @@ def read_additions(
695695
logger.debug(
696696
"Reading additions vectors"
697697
)
698-
updates_array = tiledb.open(updates_uri, mode="r")
699-
q = updates_array.query(attrs=('vector',), coords=True)
700-
data = q[:]
701-
additions_filter = [len(item) > 0 for item in data["vector"]]
702-
return np.vstack(data["vector"][additions_filter]), data["external_id"][additions_filter]
698+
with tiledb.open(updates_uri, mode="r") as updates_array:
699+
q = updates_array.query(attrs=('vector',), coords=True)
700+
data = q[:]
701+
additions_filter = [len(item) > 0 for item in data["vector"]]
702+
return np.vstack(data["vector"][additions_filter]), data["external_id"][additions_filter]
703703

704704
def read_updated_ids(
705705
updates_uri: str,
@@ -713,10 +713,10 @@ def read_updated_ids(
713713
logger.debug(
714714
"Reading updated vector ids"
715715
)
716-
updates_array = tiledb.open(updates_uri, mode="r")
717-
q = updates_array.query(attrs=('vector',), coords=True)
718-
data = q[:]
719-
return data["external_id"]
716+
with tiledb.open(updates_uri, mode="r") as updates_array:
717+
q = updates_array.query(attrs=('vector',), coords=True)
718+
data = q[:]
719+
return data["external_id"]
720720

721721
def read_input_vectors(
722722
source_uri: str,
@@ -1729,10 +1729,15 @@ def consolidate_and_vacuum(
17291729
config: Optional[Mapping[str, Any]] = None,
17301730
):
17311731
group = tiledb.Group(index_group_uri)
1732-
if INPUT_VECTORS_ARRAY_NAME in group:
1733-
tiledb.Array.delete_array(group[INPUT_VECTORS_ARRAY_NAME].uri)
1734-
if EXTERNAL_IDS_ARRAY_NAME in group:
1735-
tiledb.Array.delete_array(group[EXTERNAL_IDS_ARRAY_NAME].uri)
1732+
try:
1733+
if INPUT_VECTORS_ARRAY_NAME in group:
1734+
tiledb.Array.delete_array(group[INPUT_VECTORS_ARRAY_NAME].uri)
1735+
if EXTERNAL_IDS_ARRAY_NAME in group:
1736+
tiledb.Array.delete_array(group[EXTERNAL_IDS_ARRAY_NAME].uri)
1737+
except tiledb.TileDBError as err:
1738+
message = str(err)
1739+
if "does not exist" not in message:
1740+
raise err
17361741
modes = ["fragment_meta", "commits", "array_meta"]
17371742
for mode in modes:
17381743
conf = tiledb.Config(config)

0 commit comments

Comments
 (0)