Commit Graph

8 Commits

Author SHA1 Message Date
thibaud-leclere
116d7b409e perf: batch Wikidata SPARQL queries per film instead of per actor
Use a VALUES clause to fetch awards for all actors of a film in a
single SPARQL request, reducing Wikidata API calls from ~20 per film
to 1 and avoiding idle timeout errors from rate limiting.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-01 20:37:13 +02:00
thibaud-leclere
369893a77e refactor: track import progress per film instead of per batch
Replace batch-level progress (processedBatches/totalBatches) with
film-level progress (processedFilms/totalFilms) for smoother UI updates.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-01 19:30:15 +02:00
thibaud-leclere
8c73a22eff refactor: embed film data directly in batch messages
Avoid re-parsing the entire CSV file in each batch handler by including
the film data in the message payload itself.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-01 19:25:45 +02:00
thibaud-leclere
087b063f1f chore: reorganizing 2026-04-01 19:24:04 +02:00
thibaud-leclere
246d6fc740 fix: reorder constructor params in ImportFilmsBatchMessageHandler
Move AwardImporter after ImportRepository to fix autowiring order
in compiled container cache.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-01 14:44:08 +02:00
thibaud-leclere
0fd0b85b8f feat: import actor awards during film batch import 2026-04-01 14:27:54 +02:00
thibaud-leclere
a37ac1debd fix: resolve messenger worker OOM by clearing EntityManager and disabling debug
Clear Doctrine identity map after each film import to prevent memory
accumulation. Run messenger with --no-debug and higher PHP memory_limit
to avoid profiling overhead in dev.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-31 21:34:11 +02:00
thibaud-leclere
4955c5bde9 feat: add ImportFilmsBatchMessageHandler 2026-03-29 10:20:24 +02:00