fix: Use AsyncSession in delete_vertex_builds (#4653)

Use AsyncSession in delete_vertex_builds
This commit is contained in:
Christophe Bornet 2024-11-17 12:51:24 +01:00 • committed by GitHub
commit a7aa3ab03f
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
3 changed files with 39 additions and 34 deletions

View file

@ -5,7 +5,7 @@ from fastapi import APIRouter, Depends, HTTPException, Query
from sqlalchemy import delete
from sqlmodel import col, select
from langflow.api.utils import AsyncDbSession, DbSession
from langflow.api.utils import AsyncDbSession
from langflow.schema.message import MessageResponse
from langflow.services.auth.utils import get_current_active_user
from langflow.services.database.models.message.model import MessageRead, MessageTable, MessageUpdate
@ -30,9 +30,9 @@ async def get_vertex_builds(flow_id: Annotated[UUID, Query()], session: AsyncDbS
@router.delete("/builds", status_code=204)
def delete_vertex_builds(flow_id: Annotated[UUID, Query()], session: DbSession) -> None:
async def delete_vertex_builds(flow_id: Annotated[UUID, Query()], session: AsyncDbSession) -> None:
try:
delete_vertex_builds_by_flow_id(session, flow_id)
await delete_vertex_builds_by_flow_id(session, flow_id)
except Exception as e:
raise HTTPException(status_code=500, detail=str(e)) from e

View file

@ -32,6 +32,7 @@ def log_vertex_build(db: Session, vertex_build: VertexBuildBase) -> VertexBuildT
return table
def delete_vertex_builds_by_flow_id(db: Session, flow_id: UUID) -> None:
db.exec(delete(VertexBuildTable).where(VertexBuildTable.flow_id == flow_id))
db.commit()
async def delete_vertex_builds_by_flow_id(db: AsyncSession, flow_id: UUID) -> None:
stmt = delete(VertexBuildTable).where(VertexBuildTable.flow_id == flow_id)
await db.exec(stmt)
await db.commit()