Skip to content

Commit 1f816dc

Browse files
authored
Set vacuum and consolidation mode in ingestion (#83)
Vacuum was previously missing. This also adds `commits` to the post-ingestion work.
1 parent de8faf6 commit 1f816dc

File tree

1 file changed

+12
-18
lines changed

1 file changed

+12
-18
lines changed

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

Lines changed: 12 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -1265,24 +1265,18 @@ def consolidate_and_vacuum(
12651265
array_uri: str,
12661266
config: Optional[Mapping[str, Any]] = None,
12671267
):
1268-
conf_fragment_meta = tiledb.Config(config)
1269-
conf_fragment_meta["sm.consolidation.mode"] = "fragment_meta"
1270-
ctx_fragment_meta = tiledb.Ctx(conf_fragment_meta)
1271-
group = tiledb.Group(array_uri, ctx=ctx_fragment_meta)
1272-
tiledb.consolidate(group[PARTS_ARRAY_NAME].uri, ctx=ctx_fragment_meta)
1273-
tiledb.vacuum(group[PARTS_ARRAY_NAME].uri, ctx=ctx_fragment_meta)
1274-
if index_type == "IVF_FLAT":
1275-
tiledb.consolidate(group[IDS_ARRAY_NAME].uri, ctx=ctx_fragment_meta)
1276-
tiledb.vacuum(group[IDS_ARRAY_NAME].uri, ctx=ctx_fragment_meta)
1277-
1278-
conf_array_meta = tiledb.Config(config)
1279-
conf_array_meta["sm.consolidation.mode"] = "array_meta"
1280-
ctx_array_meta = tiledb.Ctx(conf_array_meta)
1281-
tiledb.consolidate(group[PARTS_ARRAY_NAME].uri, ctx=ctx_array_meta)
1282-
tiledb.vacuum(group[PARTS_ARRAY_NAME].uri, ctx=ctx_array_meta)
1283-
if index_type == "IVF_FLAT":
1284-
tiledb.consolidate(group[IDS_ARRAY_NAME].uri, ctx=ctx_fragment_meta)
1285-
tiledb.vacuum(group[IDS_ARRAY_NAME].uri, ctx=ctx_fragment_meta)
1268+
modes = ["fragment_meta", "commits", "array_meta"]
1269+
for mode in modes:
1270+
conf = tiledb.Config(config)
1271+
conf["sm.consolidation.mode"] = mode
1272+
conf["sm.vacuum.mode"] = mode
1273+
ctx= tiledb.Ctx(conf)
1274+
group = tiledb.Group(array_uri, ctx=ctx)
1275+
tiledb.consolidate(group[PARTS_ARRAY_NAME].uri, ctx=ctx)
1276+
tiledb.vacuum(group[PARTS_ARRAY_NAME].uri, ctx=ctx)
1277+
if index_type == "IVF_FLAT":
1278+
tiledb.consolidate(group[IDS_ARRAY_NAME].uri, ctx=ctx)
1279+
tiledb.vacuum(group[IDS_ARRAY_NAME].uri, ctx=ctx)
12861280

12871281
vfs = tiledb.VFS()
12881282
partial_write_array_dir_uri = array_uri + "/" + PARTIAL_WRITE_ARRAY_DIR

0 commit comments

Comments
 (0)