Skip to content

Commit

Permalink
fix: eliminate cartesian join (#6353)
Browse files Browse the repository at this point in the history
  • Loading branch information
RogerHYang authored Feb 12, 2025
1 parent 4c1a2a0 commit a23c7e6
Showing 1 changed file with 3 additions and 4 deletions.
7 changes: 3 additions & 4 deletions src/phoenix/server/api/routers/v1/prompts.py
Original file line number Diff line number Diff line change
Expand Up @@ -151,7 +151,7 @@ async def list_prompt_versions(
),
) -> GetPromptVersionsResponseBody:
query = select(models.PromptVersion)
query = _filter_by_prompt_identifier(query, prompt_identifier)
query = _filter_by_prompt_identifier(query.join(models.Prompt), prompt_identifier)
query = query.order_by(models.PromptVersion.id.desc())

async with request.app.state.db() as session:
Expand Down Expand Up @@ -241,10 +241,9 @@ async def get_prompt_version_by_tag_name(
stmt = (
select(models.PromptVersion)
.join_from(models.PromptVersion, models.PromptVersionTag)
.join_from(models.PromptVersionTag, models.Prompt)
.where(models.PromptVersionTag.name == name)
)
stmt = _filter_by_prompt_identifier(stmt, prompt_identifier)
stmt = _filter_by_prompt_identifier(stmt.join(models.Prompt), prompt_identifier)
async with request.app.state.db() as session:
prompt_version: models.PromptVersion = await session.scalar(stmt)
if prompt_version is None:
Expand Down Expand Up @@ -272,7 +271,7 @@ async def get_prompt_version_by_latest(
prompt_identifier: str = Path(description="The identifier of the prompt, i.e. name or ID."),
) -> GetPromptResponseBody:
stmt = select(models.PromptVersion).order_by(models.PromptVersion.id.desc()).limit(1)
stmt = _filter_by_prompt_identifier(stmt, prompt_identifier)
stmt = _filter_by_prompt_identifier(stmt.join(models.Prompt), prompt_identifier)
async with request.app.state.db() as session:
prompt_version: models.PromptVersion = await session.scalar(stmt)
if prompt_version is None:
Expand Down

0 comments on commit a23c7e6

Please sign in to comment.