fix: per-handler claim lease in ledger, nats max_deliver, pin handler names
This commit is contained in:
@@ -83,7 +83,7 @@ pub async fn create_channel(
|
||||
}
|
||||
#[cfg(feature = "nats")]
|
||||
EventBusBackend::Nats => {
|
||||
let cfg = nats::NatsConfig::from_config(&config.nats)
|
||||
let cfg = nats::NatsConfig::from_config(&config.nats, &config.events)
|
||||
.context("EVENT_BUS_BACKEND=nats requires NATS_URL to be set")?;
|
||||
tracing::info!("event bus: NATS ({}), relaying the outbox", cfg.url);
|
||||
compose(outbox, Some(nats::create_bus(cfg).await?))
|
||||
|
||||
@@ -124,17 +124,24 @@ async fn handler_names_are_unique() {
|
||||
names.len(),
|
||||
"duplicate handler name in {names:?}"
|
||||
);
|
||||
for core in [
|
||||
"poster_sync",
|
||||
let mut sorted = names.clone();
|
||||
sorted.sort_unstable();
|
||||
// Names key the ledger: a rename re-runs events inside the retention
|
||||
// window, so changing this list must be a deliberate edit.
|
||||
let mut expected = vec![
|
||||
"image_cleanup",
|
||||
"movie_discovery_indexer",
|
||||
"movie_enrichment",
|
||||
"person_enrichment",
|
||||
"poster_sync",
|
||||
"search_cleanup",
|
||||
"search_reindex",
|
||||
] {
|
||||
assert!(names.contains(&core), "{core} missing from {names:?}");
|
||||
"wrapup",
|
||||
];
|
||||
if cfg!(feature = "federation") {
|
||||
expected.extend(["activitypub", "follow_backfill"]);
|
||||
}
|
||||
assert_eq!(
|
||||
names.contains(&"activitypub"),
|
||||
cfg!(feature = "federation"),
|
||||
"{names:?}"
|
||||
);
|
||||
expected.sort_unstable();
|
||||
// Image conversion ("image_conversion") is disabled in the test config.
|
||||
assert_eq!(sorted, expected);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user