DataTalksClub / DataTalksClub/website

CI container smoke: GET /unified/ 500, sqlite unable to open database file

Open
#336 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

bug foundation needs grooming P1
Dominant language
Python
Stars
0
Forks
0
PR merge metrics
No merged PRs in 30d

Description

Plan context: discovered while observing the CI run for #332 (D0.1a). Not caused by it.

Symptom

The container job of the CI workflow fails at the step "Smoke-test liveness without publishing": /health/live passes with the exact release identity, but GET /unified/ returns 500:

sqlite3.OperationalError: unable to open database file
django.db.utils.OperationalError: unable to open database file
  File "/app/core/views.py", line 79, in home
    events = event_groups()

Exit code 22; the ci-gate job then marks the run failed and fail-fast cancels quality/django/playwright.

Evidence

  • Run 34181931902 (commit f8f68c46, D0.1a merge): container job failed as above.
  • Run 34176630561 (parent commit ca49f1bf, merge of #324): failed identically before being cancelled by the next push.
  • No CI run on main has reached completion since 2026-09-05, so the matrix (quality/django/playwright) has produced no main evidence across the recent merges.

Expected

The smoke test serves GET /unified/ from the runtime image without a database error, and the CI container job completes so the full matrix runs.

Suspected direction

The smoke container appears to hit a sqlite database path that cannot be opened (missing or not writable for the runtime user). Recent merges (#321-#325, content_sync and database-wall work) are the likely window; bisect by running the same smoke step against earlier commits if needed.

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with the container CI job and its "Smoke-test liveness without publishing" step, then inspect the database configuration used by core/views.py at line 79 and the runtime image's SQLite path and permissions. Reproduce the GET /unified/ request against the container and compare it with earlier commits if needed. Done means the request succeeds without a database error and the container job completes so the full matrix runs.

Written by the indexing model from the issue text.

Assessment

Tech stack
django, python, sqlite
Domain
ci-cd, database
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Active
Clarity
Mostly clear
Newbie friendliness
68/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.