From b5a3b69e49ae616076570a6e8a42dc089e579081 Mon Sep 17 00:00:00 2001 From: Vasilije <8619304+Vasilije1990@users.noreply.github.com> Date: Mon, 5 Aug 2024 10:54:59 +0200 Subject: [PATCH] Fixes to the sqlalchemy adapter --- cognee/api/v1/cognify/cognify_v2.py | 2 +- .../databases/relational/sqlalchemy/SqlAlchemyAdapter.py | 8 ++++++-- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/cognee/api/v1/cognify/cognify_v2.py b/cognee/api/v1/cognify/cognify_v2.py index 7c6139b3c..d3f20ba17 100644 --- a/cognee/api/v1/cognify/cognify_v2.py +++ b/cognee/api/v1/cognify/cognify_v2.py @@ -119,7 +119,7 @@ async def cognify(datasets: Union[str, list[str]] = None, user: User = None): dataset_name = generate_dataset_name(dataset) if dataset_name in existing_datasets: - awaitables.append(run_cognify_pipeline(dataset, db_engine.get_files_metadata(dataset_name))) + awaitables.append(run_cognify_pipeline(dataset, await db_engine.get_files_metadata(dataset_name))) return await asyncio.gather(*awaitables) diff --git a/cognee/infrastructure/databases/relational/sqlalchemy/SqlAlchemyAdapter.py b/cognee/infrastructure/databases/relational/sqlalchemy/SqlAlchemyAdapter.py index 5b5b1fcbe..4ca533aca 100644 --- a/cognee/infrastructure/databases/relational/sqlalchemy/SqlAlchemyAdapter.py +++ b/cognee/infrastructure/databases/relational/sqlalchemy/SqlAlchemyAdapter.py @@ -60,8 +60,12 @@ class SQLAlchemyAdapter(): async def get_files_metadata(self, dataset_name: str): async with self.engine.connect() as connection: - result = await connection.execute(text(f"SELECT id, name, file_path, extension, mime_type FROM {dataset_name}.file_metadata;")) - return [dict(row) for row in result] + result = await connection.execute( + text(f"SELECT id, name, file_path, extension, mime_type FROM {dataset_name}.file_metadata;")) + rows = result.fetchall() + metadata = [{"id": row.id, "name": row.name, "file_path": row.file_path, "extension": row.extension, + "mime_type": row.mime_type} for row in rows] + return metadata async def delete_table(self, table_name: str): async with self.engine.connect() as connection: