Skip to content

Commit 97a963b

Browse files
rkuo-danswerRichard Kuo (Danswer)
andauthored
add index to speed up get last attempt (#3636)
* add index to speed up get last attempt * use descending order * put back unique param * how did this not get formatted? --------- Co-authored-by: Richard Kuo (Danswer) <rkuo@onyx.app>
1 parent 7f6ef1f commit 97a963b

File tree

2 files changed

+43
-0
lines changed

2 files changed

+43
-0
lines changed
Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,35 @@
1+
"""add composite index for index attempt time updated
2+
3+
Revision ID: 369644546676
4+
Revises: 2955778aa44c
5+
Create Date: 2025-01-08 15:38:17.224380
6+
7+
"""
8+
from alembic import op
9+
from sqlalchemy import text
10+
11+
# revision identifiers, used by Alembic.
12+
revision = "369644546676"
13+
down_revision = "2955778aa44c"
14+
branch_labels: None = None
15+
depends_on: None = None
16+
17+
18+
def upgrade() -> None:
19+
op.create_index(
20+
"ix_index_attempt_ccpair_search_settings_time_updated",
21+
"index_attempt",
22+
[
23+
"connector_credential_pair_id",
24+
"search_settings_id",
25+
text("time_updated DESC"),
26+
],
27+
unique=False,
28+
)
29+
30+
31+
def downgrade() -> None:
32+
op.drop_index(
33+
"ix_index_attempt_ccpair_search_settings_time_updated",
34+
table_name="index_attempt",
35+
)

backend/onyx/db/models.py

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@
1818
from fastapi_users_db_sqlalchemy.generics import TIMESTAMPAware
1919
from sqlalchemy import Boolean
2020
from sqlalchemy import DateTime
21+
from sqlalchemy import desc
2122
from sqlalchemy import Enum
2223
from sqlalchemy import Float
2324
from sqlalchemy import ForeignKey
@@ -813,6 +814,13 @@ class IndexAttempt(Base):
813814
"connector_credential_pair_id",
814815
"time_created",
815816
),
817+
Index(
818+
"ix_index_attempt_ccpair_search_settings_time_updated",
819+
"connector_credential_pair_id",
820+
"search_settings_id",
821+
desc("time_updated"),
822+
unique=False,
823+
),
816824
)
817825

818826
def __repr__(self) -> str:

0 commit comments

Comments
 (0)