Wrap blocking mkdir() calls in run_blocking for async startup and setup

This commit is contained in:
2026-04-14 13:54:47 +02:00
parent 6b436dc354
commit 2a7766d206
3 changed files with 4 additions and 2 deletions

View File

@@ -54,6 +54,8 @@ Any user action that exercises an error path on the `/config/global`, `/config/r
### TASK-02 — Wrap blocking `mkdir()` calls in `run_blocking()` 🔴 ### TASK-02 — Wrap blocking `mkdir()` calls in `run_blocking()` 🔴
**Status:** Completed ✅
**Where:** **Where:**
- `backend/app/services/setup_service.py` — line 178, inside `async def _ensure_database_initialized()` - `backend/app/services/setup_service.py` — line 178, inside `async def _ensure_database_initialized()`
- `backend/app/startup.py` — line 73, inside `async def startup_shared_resources()` - `backend/app/startup.py` — line 73, inside `async def startup_shared_resources()`

View File

@@ -175,7 +175,7 @@ async def _ensure_database_initialized(database_path: str) -> bool:
parent_dir = database_path_obj.parent parent_dir = database_path_obj.parent
try: try:
parent_dir.mkdir(parents=True, exist_ok=True) await run_blocking(parent_dir.mkdir, parents=True, exist_ok=True)
except PermissionError: except PermissionError:
log.warning( log.warning(
"cannot_create_runtime_database_parent", "cannot_create_runtime_database_parent",

View File

@@ -70,7 +70,7 @@ async def startup_shared_resources(
A tuple of ``(http_session, scheduler)``. A tuple of ``(http_session, scheduler)``.
""" """
db_path: Path = Path(settings.database_path) db_path: Path = Path(settings.database_path)
db_path.parent.mkdir(parents=True, exist_ok=True) await run_blocking(db_path.parent.mkdir, parents=True, exist_ok=True)
log.debug("database_directory_ensured", directory=str(db_path.parent)) log.debug("database_directory_ensured", directory=str(db_path.parent))