Zadanie (co 6 h po 200) bralo zawsze 200 najnowszych kandydatow. Przebieg o 05:00 wzbogacal 14-19 swiezych filmow, trzy kolejne mielily te same 200 bez trafienia z wynikiem zero, a 12,9 tys. starszych kandydatow nie bylo sprawdzonych ani razu. Teraz movies.tpdb_checked_at (migracja 0051): najpierw niesprawdzone, film bez trafienia wraca po 30 dniach, blad nie oznacza. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
33 lines
1.2 KiB
Python
33 lines
1.2 KiB
Python
"""movies.tpdb_checked_at: kiedy film ostatnio szukano w TPDB (kolejka wzbogacania).
|
|
|
|
Wzbogacanie filmow z TPDB (co 6 h po 200) bralo zawsze 200 NAJNOWSZYCH kandydatow i nie
|
|
pamietalo, ktore juz sprawdzilo. Przebieg o 05:00, po dziennym ingescie, wzbogacal 14-19
|
|
nowych filmow, a trzy kolejne mielily te same 200 bez trafienia i konczyly z zerem.
|
|
12,9 tys. kandydatow starszych niz miesiac nie doczekalo sie ani jednego sprawdzenia
|
|
(pomiar 2026-09-30). Z data sprawdzenia kolejka idzie od niesprawdzonych, a film bez
|
|
trafienia wraca najwczesniej po 30 dniach.
|
|
|
|
Kolumna nullable bez DEFAULT, ALTER natychmiastowy; NULL = jeszcze nie sprawdzany.
|
|
|
|
Revision ID: 0051_movies_tpdb_checked_at
|
|
Revises: 0050_tag_vertical_counts_no_fk
|
|
Create Date: 2026-09-30
|
|
"""
|
|
from __future__ import annotations
|
|
|
|
from alembic import op
|
|
|
|
revision = "0051_movies_tpdb_checked_at"
|
|
down_revision: str | None = "0050_tag_vertical_counts_no_fk"
|
|
branch_labels = None
|
|
depends_on = None
|
|
|
|
|
|
def upgrade() -> None:
|
|
op.execute("SET LOCAL lock_timeout = '5s'")
|
|
op.execute("ALTER TABLE movies ADD COLUMN IF NOT EXISTS tpdb_checked_at timestamptz")
|
|
|
|
|
|
def downgrade() -> None:
|
|
op.execute("SET LOCAL lock_timeout = '5s'")
|
|
op.execute("ALTER TABLE movies DROP COLUMN IF EXISTS tpdb_checked_at")
|