snix/users/Profpatsch/whatcd-resolver
Profpatsch cb5a745233 fix(users/Profpatsch/whatcd-resolver): speed up artist_ids lookups
We need `artist_ids` in most of the queries, so let’s make them a
generated column and put an index on them.

This reduces times for getArtistNameById from ~300ms to ~20ms and for
the main “latest” table from ~250ms to ~60ms.

The `artist_has_been_snatched` logic moves into the torrent filter, so
we don’t have to work on such large records further down.

Change-Id: I5a1929bd9c81ea0031e512d01897c0e460ded077
Reviewed-on: https://cl.tvl.fyi/c/depot/+/13240
Tested-by: BuildkiteCI
Reviewed-by: Profpatsch <mail@profpatsch.de>
2025-03-10 16:55:15 +00:00
..
services fix(users/Profpatsch/whatcd-resolver/services): dont unset builders 2024-09-13 11:13:59 +00:00
src fix(users/Profpatsch/whatcd-resolver): speed up artist_ids lookups 2025-03-10 16:55:15 +00:00
.gitignore chore(users/Profpatsch/whatcd-resolver): ignore .ninja 2024-09-13 11:13:59 +00:00
build.ninja feat(users/Profpatsch/whatcd-resolver): add services & readme 2024-03-17 01:21:14 +00:00
default.nix feat(users/Profpatsch/whatcd-resolver): add a simple torrent parser 2025-03-06 23:41:43 +00:00
Main.hs feat(users/Profpatsch/whatcd-resolver): add executable 2023-09-17 18:05:42 +00:00
notes.org feat(users/Profpatsch): init whatcd-resolver 2023-07-14 08:03:14 +00:00
README.md feat(users/Profpatsch/whatcd-resolver): add services & readme 2024-03-17 01:21:14 +00:00
server-notes.org feat(users/Profpatsch): init whatcd-resolver 2023-07-14 08:03:14 +00:00
whatcd-resolver.cabal feat(users/Profpatsch/whatcd-resolver): add a simple torrent parser 2025-03-06 23:41:43 +00:00

whatcd-resolver

To run:

ninja run-services

in one terminal (starts the background tasks)

ninja run

to start the server. It runs on 9092.

You need to be in the nix-shell in ./...

You need to set the pass key internet/redacted/api-keys/whatcd-resolver to an API key for RED.

You need to have a transmission-rpc-daemon listening on port 9091 (no auth, try ssh port forwarding lol).