mirror of
https://github.com/wahyd4/you-music.git
synced 2026-08-09 05:06:44 +10:00
Add time consuming debugging logs
This commit is contained in:
@@ -126,9 +126,12 @@ async def get_all_music(
|
|||||||
db: AsyncSession = Depends(get_db)
|
db: AsyncSession = Depends(get_db)
|
||||||
):
|
):
|
||||||
"""Get all music files with sorting - optimized for performance"""
|
"""Get all music files with sorting - optimized for performance"""
|
||||||
|
import time
|
||||||
from sqlalchemy import asc, desc
|
from sqlalchemy import asc, desc
|
||||||
from sqlalchemy.orm import noload
|
from sqlalchemy.orm import noload
|
||||||
|
|
||||||
|
start_time = time.time()
|
||||||
|
|
||||||
# Don't load relationships for this endpoint (causes N+1 queries)
|
# Don't load relationships for this endpoint (causes N+1 queries)
|
||||||
query = select(Music).options(noload(Music.playlists))
|
query = select(Music).options(noload(Music.playlists))
|
||||||
|
|
||||||
@@ -144,10 +147,21 @@ async def get_all_music(
|
|||||||
query = query.order_by(desc(sort_column))
|
query = query.order_by(desc(sort_column))
|
||||||
|
|
||||||
# Execute with limit and offset
|
# Execute with limit and offset
|
||||||
|
query_start = time.time()
|
||||||
result = await db.execute(
|
result = await db.execute(
|
||||||
query.offset(skip).limit(limit)
|
query.offset(skip).limit(limit)
|
||||||
)
|
)
|
||||||
|
query_time = time.time() - query_start
|
||||||
|
|
||||||
|
# Get results
|
||||||
|
fetch_start = time.time()
|
||||||
music_list = result.scalars().all()
|
music_list = result.scalars().all()
|
||||||
|
fetch_time = time.time() - fetch_start
|
||||||
|
|
||||||
|
total_time = time.time() - start_time
|
||||||
|
|
||||||
|
logger.info(f"Music list query: total={total_time:.3f}s, query={query_time:.3f}s, fetch={fetch_time:.3f}s, rows={len(music_list)}, skip={skip}")
|
||||||
|
|
||||||
return music_list
|
return music_list
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user