Skip to content

fix: stop caching transient empty provider searches as permanent misses - #50

Merged
boidushya merged 1 commit into
masterfrom
fix/transient-empty-search-negatives
Oct 26, 2026
Merged

boidushya merged 1 commit into
masterfrom
fix/transient-empty-search-negatives

Conversation

@boidushya

Copy link
Copy Markdown
Member

Overview

QQ and Kugou searches sometimes come back empty for songs they have, and we cached that as a 7-day "no songs found". Before writing that miss, check whether the same provider already has lyrics for the song and artist under any album or duration. If it does, the miss only lives for 6 hours. The lookup uses a new partial index on qq/kugou base_keys and gives up after 500ms, so a missing index just falls back to the old behaviour. The migration builds the index concurrently and skips it if it exists, so build it on prod by hand before deploying.

@railway-app

railway-app Bot commented Oct 26, 2026 •

Copy link
Copy Markdown

🚅 Deployed to the api-pr-50 environment in better-lyrics

Service Status Web Updated
api ✅ Success (View Logs) Web Oct 26, 2026 at 8:05 pm UTC
4 services not affected by this PR
  • artwork.boidu.dev
  • Butler Postgres
  • Artwork Postgres
  • Butler

@railway-app
railway-app Bot temporarily deployed to better-lyrics / api-pr-50 October 26, 2026 20:03 Destroyed
@boidushya
boidushya merged commit b5b06a0 into master Oct 26, 2026
7 checks passed

This branch was successfully deployed

No deployments
better-lyrics / api-pr-50 — 23ef4acf Deployed Oct 26, 2026 by railway-app[bot]
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant