get_total_unique_step_order_count_by_task_ids fix again (#1881)

This commit is contained in:
Shuchang Zheng 2025-03-04 03:22:16 -05:00 committed by GitHub
parent 2cef654a9a
commit 0b8f64e8ab
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -3,7 +3,7 @@ from datetime import datetime, timedelta
from typing import Any, List, Optional, Sequence from typing import Any, List, Optional, Sequence
import structlog import structlog
from sqlalchemy import and_, delete, distinct, func, select, update from sqlalchemy import and_, delete, distinct, func, select, tuple_, update
from sqlalchemy.exc import SQLAlchemyError from sqlalchemy.exc import SQLAlchemyError
from sqlalchemy.ext.asyncio import async_sessionmaker, create_async_engine from sqlalchemy.ext.asyncio import async_sessionmaker, create_async_engine
@ -356,11 +356,11 @@ class AgentDB:
try: try:
async with self.Session() as session: async with self.Session() as session:
query = ( query = (
select(func.count(distinct(StepModel.task_id, StepModel.order))) select(func.count(distinct(tuple_(StepModel.task_id, StepModel.order))))
.where(StepModel.task_id.in_(task_ids)) .where(StepModel.task_id.in_(task_ids))
.filter_by(organization_id=organization_id) .where(StepModel.organization_id == organization_id)
) )
return (await session.scalars(query)).scalar() return (await session.execute(query)).scalar()
except SQLAlchemyError: except SQLAlchemyError:
LOG.error("SQLAlchemyError", exc_info=True) LOG.error("SQLAlchemyError", exc_info=True)
raise raise