From 5dbbfcb8a0e63be77ebe9ccddbe7fd99b66b7846 Mon Sep 17 00:00:00 2001 From: Frank Date: Sat, 31 Oct 2026 04:13:12 -0700 Subject: [PATCH] docs(media): an accepted refresh can still be dropped by a wedged task runner MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Tonight's sequence, measured: the post-sweep refresh answered 204 while `Scan Media Library` sat in `Cancelling`, and Jellyfin's stale-path counts froze for an hour at 0 % CPU — the request was accepted and discarded. Restarting the user unit cleared the runner; one POST after that reported State `Running` at 130 % CPU and the counts began to move. So the status code is not the evidence, and the restart is `systemctl --user restart jellyfin.service`, never `deploy.sh`, which would run the never-tested metadata-view cutover. --- serverAppConfigs-docs/Dankserver/Media Relayout.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/serverAppConfigs-docs/Dankserver/Media Relayout.md b/serverAppConfigs-docs/Dankserver/Media Relayout.md index 8ff15ed..ebf963b 100644 --- a/serverAppConfigs-docs/Dankserver/Media Relayout.md +++ b/serverAppConfigs-docs/Dankserver/Media Relayout.md @@ -113,7 +113,7 @@ curl -s -K /tmp/jf.hdr -o /dev/null -w "jellyfin scan: %{http_code}\n" shred -u /tmp/jf.hdr ``` -`204` is acceptance; anything else queued no scan, so re-issue it. A `401` from a key that answers `200` on a hand-typed request is this block's quoting, not the server: bash `printf` collapses `\"` to `"`, curl ends the quoted string at that quote, and Jellyfin receives `Authorization: MediaBrowser Token=` with nothing after it. Both forms were run against this host: `\\"` answers `204`, `\"` answers `401`. One accepted refresh is the whole procedure — a second one while a scan runs moves `Scan Media Library` to `Cancelling` and the pass starts over, so wait it out instead of poking it. +`204` is acceptance; anything else queued no scan. A `401` from a key that answers `200` on a hand-typed request is this block's quoting, not the server — bash `printf` collapses `\"` to `"`, curl ends the quoted value at that quote, and Jellyfin receives `Authorization: MediaBrowser Token=` with nothing after it (`\\"` answers 204, `\"` answers 401, both run on this host). One accepted refresh is the whole procedure: a second one while a scan runs moves `Scan Media Library` to `Cancelling`, and once the runner holds `Cancelling` every later `204` is accepted and then dropped — the fix is `systemctl --user restart jellyfin.service` (never `deploy.sh`: that runs the metadata-view cutover), one POST after health answers, and then believe `ScheduledTasks` State `Running`, not the status code. ### Proving the move landed