join query performance improvement - add organization_id to the workflow_scripts & scripts table join (#4429)

This commit is contained in:
Shuchang Zheng
2026-01-09 20:01:28 -08:00
committed by GitHub
parent dad3590d7a
commit 6cd5d90f55

View File

@@ -5806,9 +5806,16 @@ class AgentDB(BaseAlchemyDB):
try:
async with self.Session() as session:
# Build the query: join workflow_scripts with scripts
# Join on both script_id and organization_id to leverage uc_org_script_version index
query = (
select(ScriptModel)
.join(WorkflowScriptModel, ScriptModel.script_id == WorkflowScriptModel.script_id)
.join(
WorkflowScriptModel,
and_(
ScriptModel.organization_id == WorkflowScriptModel.organization_id,
ScriptModel.script_id == WorkflowScriptModel.script_id,
),
)
.where(
WorkflowScriptModel.organization_id == organization_id,
WorkflowScriptModel.workflow_permanent_id == workflow_permanent_id,