trustgraph/tests/unit/test_storage
cybermaggedon 1740e315f4
feat: batch row imports and split index configuration (#1055)
Adds batching to structured data row imports. Previously each row was
sent as a separate WebSocket message, causing one embeddings service
call per row. The bulk import clients now accumulate rows into batches
(default 40) before sending, and the --batch-size CLI argument is
wired through from tg-load-structured-data to the import call.

Splits the schema "indexes" field into two separate configurations:
- "query-indexes": fields for Cassandra exact-match retrieval
- "vector-indexes": fields for vector embedding and semantic search

This avoids wasting compute embedding primary key integers that only
need exact lookup, while allowing each field to independently opt in
to either or both retrieval patterns.

Adds row_id (the primary key value) as a clustering column in the
Cassandra rows table so multiple rows sharing the same index value
no longer silently overwrite each other.

Tests updated for new Cassandra schema.
2026-07-22 10:20:06 +01:00
..
conftest.py Knowledge core processing updated for embeddings interface change (#681) 2026-03-10 13:28:16 +00:00
test_cassandra_config_integration.py Recent fixes -> release/v2.4 (#891) 2026-05-08 19:48:12 +01:00
test_cassandra_storage_logic.py Structure data mvp (#452) 2025-08-07 20:47:20 +01:00
test_doc_embeddings_milvus_storage.py feat: workspace-based multi-tenancy, replacing user as tenancy axis (#840) 2026-04-21 23:23:01 +01:00
test_doc_embeddings_pinecone_storage.py feat: workspace-based multi-tenancy, replacing user as tenancy axis (#840) 2026-04-21 23:23:01 +01:00
test_doc_embeddings_qdrant_storage.py Make all Cassandra and Qdrant I/O async-safe with proper concurrency controls (#916) 2026-05-14 16:00:54 +01:00
test_graph_embeddings_milvus_storage.py feat: workspace-based multi-tenancy, replacing user as tenancy axis (#840) 2026-04-21 23:23:01 +01:00
test_graph_embeddings_pinecone_storage.py feat: workspace-based multi-tenancy, replacing user as tenancy axis (#840) 2026-04-21 23:23:01 +01:00
test_graph_embeddings_qdrant_storage.py feat: workspace-based multi-tenancy, replacing user as tenancy axis (#840) 2026-04-21 23:23:01 +01:00
test_kw_index_fts5_storage.py feat: hybrid retrieval (BM25 + vector RRF fusion) for document-RAG (#875) (#1030) 2026-07-07 12:54:02 +01:00
test_memgraph_workspace_collection_isolation.py feat: workspace-based multi-tenancy, replacing user as tenancy axis (#840) 2026-04-21 23:23:01 +01:00
test_neo4j_workspace_collection_isolation.py feat: workspace-based multi-tenancy, replacing user as tenancy axis (#840) 2026-04-21 23:23:01 +01:00
test_row_embeddings_qdrant_storage.py Make all Cassandra and Qdrant I/O async-safe with proper concurrency controls (#916) 2026-05-14 16:00:54 +01:00
test_rows_cassandra_storage.py feat: batch row imports and split index configuration (#1055) 2026-07-22 10:20:06 +01:00
test_triples_cassandra_storage.py Make all Cassandra and Qdrant I/O async-safe with proper concurrency controls (#916) 2026-05-14 16:00:54 +01:00
test_triples_falkordb_storage.py feat: workspace-based multi-tenancy, replacing user as tenancy axis (#840) 2026-04-21 23:23:01 +01:00
test_triples_memgraph_storage.py feat: workspace-based multi-tenancy, replacing user as tenancy axis (#840) 2026-04-21 23:23:01 +01:00
test_triples_neo4j_storage.py feat: workspace-based multi-tenancy, replacing user as tenancy axis (#840) 2026-04-21 23:23:01 +01:00