This commit is contained in:
Connor Johnstone
2026-03-24 16:01:59 -04:00
parent 823ef15022
commit 45a7dcd8cd

View File

@@ -72,8 +72,16 @@ impl WorkerManager {
// Read config for concurrency settings and spawn workers // Read config for concurrency settings and spawn workers
let cfg = state_clone.config.read().await.clone(); let cfg = state_clone.config.read().await.clone();
spawn_worker(state_clone.clone(), WorkTaskType::Download, 1); spawn_worker(state_clone.clone(), WorkTaskType::Download, 1);
spawn_worker(state_clone.clone(), WorkTaskType::Index, cfg.indexing.concurrency); spawn_worker(
spawn_worker(state_clone.clone(), WorkTaskType::Tag, cfg.tagging.concurrency); state_clone.clone(),
WorkTaskType::Index,
cfg.indexing.concurrency,
);
spawn_worker(
state_clone.clone(),
WorkTaskType::Tag,
cfg.tagging.concurrency,
);
spawn_worker(state_clone.clone(), WorkTaskType::Organize, 4); spawn_worker(state_clone.clone(), WorkTaskType::Organize, 4);
}); });
} }
@@ -361,13 +369,13 @@ async fn process_index(
break; break;
} }
for track in &tracks { for track in &tracks {
if let Some(ref mbid) = track.musicbrainz_id { if let Some(ref mbid) = track.musicbrainz_id
if !wanted_mbids.contains(mbid.as_str()) { && !wanted_mbids.contains(mbid.as_str())
{
let tag_payload = serde_json::json!({"track_id": track.id}); let tag_payload = serde_json::json!({"track_id": track.id});
downstream.push((WorkTaskType::Tag, tag_payload.to_string())); downstream.push((WorkTaskType::Tag, tag_payload.to_string()));
} }
} }
}
offset += 500; offset += 500;
} }
} else if let Some(file_path) = payload.get("file_path").and_then(|v| v.as_str()) { } else if let Some(file_path) = payload.get("file_path").and_then(|v| v.as_str()) {
@@ -420,8 +428,8 @@ async fn process_tag(
.map_err(|e| e.to_string())?; .map_err(|e| e.to_string())?;
// Ensure a wanted_item exists for this track (marks imported files as Owned) // Ensure a wanted_item exists for this track (marks imported files as Owned)
if let Some(ref mbid) = track.musicbrainz_id { if let Some(ref mbid) = track.musicbrainz_id
if queries::wanted::find_by_mbid(conn, mbid) && queries::wanted::find_by_mbid(conn, mbid)
.await .await
.map_err(|e| e.to_string())? .map_err(|e| e.to_string())?
.is_none() .is_none()
@@ -449,7 +457,6 @@ async fn process_tag(
) )
.await; .await;
} }
}
// Create Organize work item // Create Organize work item
let org_payload = serde_json::json!({"track_id": track_id}); let org_payload = serde_json::json!({"track_id": track_id});