feat: add expired failed mapping cleanup query

This commit is contained in:
2026-06-21 17:18:05 +02:00
committed by Milas Holsting
parent 86d0c2b5c0
commit a9a00dbf3b
3 changed files with 17 additions and 0 deletions

View File

@@ -15,6 +15,7 @@ type Querier interface {
CreateSession(ctx context.Context, arg CreateSessionParams) (Session, error)
DeleteAnimeFetchRetry(ctx context.Context, animeID int64) error
DeleteContinueWatchingEntry(ctx context.Context, arg DeleteContinueWatchingEntryParams) error
DeleteExpiredFailedEpisodeProviderMappings(ctx context.Context) error
DeleteExpiredJikanCache(ctx context.Context) error
DeleteSession(ctx context.Context, id string) error
DeleteWatchListEntry(ctx context.Context, arg DeleteWatchListEntryParams) error

View File

@@ -333,6 +333,11 @@ SELECT anime_id, provider, provider_show_id, failed_until, last_error, updated_a
FROM episode_provider_mapping
WHERE anime_id = ? AND provider = ? LIMIT 1;
-- name: DeleteExpiredFailedEpisodeProviderMappings :exec
DELETE FROM episode_provider_mapping
WHERE provider_show_id = ''
AND failed_until <= CURRENT_TIMESTAMP;
-- name: GetTrackedAiringAnimeIDsDueForEpisodeRefresh :many
WITH tracked AS (
SELECT DISTINCT w.anime_id

View File

@@ -149,6 +149,17 @@ func (q *Queries) DeleteContinueWatchingEntry(ctx context.Context, arg DeleteCon
return err
}
const deleteExpiredFailedEpisodeProviderMappings = `-- name: DeleteExpiredFailedEpisodeProviderMappings :exec
DELETE FROM episode_provider_mapping
WHERE provider_show_id = ''
AND failed_until <= CURRENT_TIMESTAMP
`
func (q *Queries) DeleteExpiredFailedEpisodeProviderMappings(ctx context.Context) error {
_, err := q.db.ExecContext(ctx, deleteExpiredFailedEpisodeProviderMappings)
return err
}
const deleteExpiredJikanCache = `-- name: DeleteExpiredJikanCache :exec
DELETE FROM jikan_cache WHERE datetime(expires_at) <= CURRENT_TIMESTAMP
`