Skip to content

Commit 5ad7ed9

Browse files
committed
fix(db): add composite indices to traces and project_sessions (#9045)
1 parent 15026dd commit 5ad7ed9

File tree

2 files changed

+71
-0
lines changed

2 files changed

+71
-0
lines changed
Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
"""drop single indices from traces and project_sessions
2+
3+
Revision ID: 272b66ff50f8
4+
Revises: a20694b15f82
5+
Create Date: 2025-08-11 20:37:46.941940
6+
7+
"""
8+
9+
from typing import Sequence, Union
10+
11+
from alembic import op
12+
13+
# revision identifiers, used by Alembic.
14+
revision: str = "272b66ff50f8"
15+
down_revision: Union[str, None] = "a20694b15f82"
16+
branch_labels: Union[str, Sequence[str], None] = None
17+
depends_on: Union[str, Sequence[str], None] = None
18+
19+
20+
def upgrade() -> None:
21+
op.drop_index("ix_traces_project_rowid", table_name="traces")
22+
op.drop_index("ix_traces_start_time", table_name="traces")
23+
24+
op.drop_index("ix_project_sessions_project_id", table_name="project_sessions")
25+
op.drop_index("ix_project_sessions_start_time", table_name="project_sessions")
26+
27+
28+
def downgrade() -> None:
29+
op.create_index("ix_traces_project_rowid", "traces", ["project_rowid"])
30+
op.create_index("ix_traces_start_time", "traces", ["start_time"])
31+
32+
op.create_index("ix_project_sessions_project_id", "project_sessions", ["project_id"])
33+
op.create_index("ix_project_sessions_start_time", "project_sessions", ["start_time"])
Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,38 @@
1+
"""add composite indices to traces and project_sessions
2+
3+
Revision ID: 735d3d93c33e
4+
Revises: 272b66ff50f8
5+
Create Date: 2025-08-11 20:52:47.477712
6+
7+
"""
8+
9+
from typing import Sequence, Union
10+
11+
import sqlalchemy as sa
12+
from alembic import op
13+
14+
# revision identifiers, used by Alembic.
15+
revision: str = "735d3d93c33e"
16+
down_revision: Union[str, None] = "272b66ff50f8"
17+
branch_labels: Union[str, Sequence[str], None] = None
18+
depends_on: Union[str, Sequence[str], None] = None
19+
20+
21+
def upgrade() -> None:
22+
op.execute(
23+
sa.text(
24+
"CREATE INDEX ix_traces_project_rowid_start_time "
25+
"ON traces (project_rowid, start_time DESC)"
26+
)
27+
)
28+
op.execute(
29+
sa.text(
30+
"CREATE INDEX ix_project_sessions_project_id_start_time "
31+
"ON project_sessions (project_id, start_time DESC)"
32+
)
33+
)
34+
35+
36+
def downgrade() -> None:
37+
op.drop_index("ix_traces_project_rowid_start_time", table_name="traces")
38+
op.drop_index("ix_project_sessions_project_id_start_time", table_name="project_sessions")

0 commit comments

Comments
 (0)