Deluan
b27d6f61ae
fix(db): make album ReplayGain backfill scale to large libraries
...
The windowed-CTE backfill was compiled as a correlated scalar subquery
re-evaluated once per album (a full media_file group-by + window sort each
time), which never finished on a large library. Stage the ReplayGain-bearing
rows into an indexed temp table once and update only the affected albums:
~14s on a 727MB / 6945-album library, vs. effectively never.
2026-07-18 22:59:53 -04:00
..
2026-06-18 09:58:43 -04:00
2026-06-18 09:58:43 -04:00
2026-06-18 09:58:43 -04:00
2026-06-18 09:58:43 -04:00
2026-06-18 09:58:43 -04:00
2026-06-18 09:58:43 -04:00
2026-06-18 09:58:43 -04:00
2026-06-18 09:58:43 -04:00
2026-06-18 09:58:43 -04:00
2026-06-18 09:58:43 -04:00
2026-06-18 09:58:43 -04:00
2026-06-18 09:58:43 -04:00
2026-06-18 09:58:43 -04:00
2026-06-18 09:58:43 -04:00
2026-06-18 09:58:43 -04:00
2026-06-18 09:58:43 -04:00
2026-06-18 09:58:43 -04:00
2026-06-18 09:58:43 -04:00
2026-06-18 09:58:43 -04:00
2026-06-18 09:58:43 -04:00
2026-06-18 09:58:43 -04:00
2026-06-18 09:58:43 -04:00
2026-06-18 09:58:43 -04:00
2026-06-18 09:58:43 -04:00
2026-06-18 09:58:43 -04:00
2026-06-18 09:58:43 -04:00
2026-06-18 09:58:43 -04:00
2026-06-18 09:58:43 -04:00
2026-06-18 09:58:43 -04:00
2026-06-18 09:58:43 -04:00
2026-06-18 09:58:43 -04:00
2026-06-18 09:58:43 -04:00
2026-06-18 09:58:43 -04:00
2026-06-18 09:58:43 -04:00
2026-06-18 09:58:43 -04:00
2026-06-18 09:58:43 -04:00
2026-06-18 09:58:43 -04:00
2026-06-18 09:58:43 -04:00
2026-06-18 09:58:43 -04:00
2026-06-18 09:58:43 -04:00
2026-06-18 09:58:43 -04:00
2026-06-18 09:58:43 -04:00
2026-06-18 09:58:43 -04:00
2026-06-18 09:58:43 -04:00
2026-06-18 09:58:43 -04:00
2026-06-18 09:58:43 -04:00
2026-06-18 09:58:43 -04:00
2026-06-18 09:58:43 -04:00
2026-06-18 09:58:43 -04:00
2026-06-18 09:58:43 -04:00
2026-06-18 09:58:43 -04:00
2026-06-18 09:58:43 -04:00
2026-06-18 09:58:43 -04:00
2026-06-18 09:58:43 -04:00
2026-06-18 09:58:43 -04:00
2026-06-18 09:58:43 -04:00
2026-06-18 09:58:43 -04:00
2026-06-18 09:58:43 -04:00
2026-06-18 09:58:43 -04:00
2026-06-18 09:58:43 -04:00
2026-06-18 09:58:43 -04:00
2026-06-18 09:58:43 -04:00
2026-06-18 09:58:43 -04:00
2026-06-18 09:58:43 -04:00
2026-06-18 09:58:43 -04:00
2026-06-18 09:58:43 -04:00
2026-06-18 09:58:43 -04:00
2026-07-02 09:46:57 -04:00
2026-06-18 09:58:43 -04:00
2026-06-18 09:58:43 -04:00
2025-02-19 20:35:17 -05:00
2026-06-18 09:58:43 -04:00
2024-08-03 13:37:21 -04:00
2024-10-19 20:46:54 -04:00
2024-10-26 14:06:34 -04:00
2026-06-18 09:58:43 -04:00
2025-05-21 22:16:10 -04:00
2026-06-18 09:58:43 -04:00
2026-06-18 09:58:43 -04:00
2025-06-13 17:27:57 -04:00
2026-06-18 09:58:43 -04:00
2026-06-18 09:58:43 -04:00
2025-06-28 18:43:11 -04:00
2025-06-28 19:00:13 -04:00
2025-06-30 17:11:54 -04:00
2025-07-18 18:41:12 -04:00
2025-11-06 14:41:09 -05:00
2025-11-24 23:18:05 -05:00
2025-12-06 11:07:18 -05:00
2026-01-05 19:05:11 -05:00
2026-01-14 19:22:48 -05:00
2026-01-18 17:42:42 -05:00
2026-06-18 09:58:43 -04:00
2026-02-28 10:59:13 -05:00
2026-03-01 14:07:18 -05:00
2026-03-02 11:39:59 -05:00
2026-06-18 09:58:43 -04:00
2026-06-18 09:58:43 -04:00
2026-06-18 09:58:43 -04:00
2026-06-18 09:58:43 -04:00
2026-03-15 22:19:55 -04:00
2026-03-16 07:55:22 -04:00
2026-03-18 18:57:33 -04:00
2026-04-05 12:56:32 -04:00
2026-04-10 19:29:20 -04:00
2026-06-18 09:58:43 -04:00
2026-05-22 18:00:13 -03:00
2026-06-12 15:53:37 -04:00
2026-06-13 13:15:20 -04:00
2026-06-18 09:58:43 -04:00
2026-06-29 16:18:29 -04:00
2026-07-02 12:53:10 -04:00
2026-07-03 08:58:55 -04:00
2026-07-13 11:32:03 -04:00
2026-07-14 07:38:25 -04:00
2026-07-14 11:46:37 -04:00
2026-07-18 22:59:53 -04:00
2026-07-13 12:04:29 -04:00