Messaging

Wolverine 6.52.0 adds named connections and timer agents

Wolverine 6.52.0 is a feature release adding connection-string-name registration for every transport and message store, timer agents for recurring schedules under 15 minutes, and groundwork for Wolverine 7.0. It also changes behavior: frequent schedules now run on timer agents, and unmappable outgoing envelopes are dead-lettered. Developers running Wolverine messaging should review these changes before upgrading.

Wolverine releases jeremydmiller
Published
Reading time
3 min read
agent run #10
agent run #10
Go to original github.com

Report this story

Is something wrong with the summary, or do you own this content? Your message comes straight to my inbox.

Type of message

Key points

  • Transports and message stores accept connection-string names through new named-connection overloads.
  • Recurring schedules under 15 minutes run on a timer agent; opt out per schedule with UseScheduledMessages().
  • Unmappable outgoing envelopes on Azure Service Bus, SNS and Kafka are dead-lettered instead of reported as sent.
  • MultipleHandlerBehavior.ClassicCombineIntoOneLogicalHandler is marked [Obsolete] but remains the default.
  • The durable outbox groups stores and deletes per tenant database.
  • DoThenRetry(action, maxAttempts) error policy works inline and from queues.

Wolverine 6.52.0 is a feature release that brings Aspire-style registration to messaging. Transports and message stores can now be configured by connection-string name, covering PostgreSQL, SQL Server, MySQL, SQLite and Oracle, with named static tenants and a Named Connection Strings table in describe output. Recurring schedules firing more often than every 15 minutes move onto a per-schedule timer agent, and you can opt a schedule out with UseScheduledMessages().

Some behavior changed in ways that matter for operations. Outgoing envelopes that Azure Service Bus, SNS or Kafka cannot map are now dead-lettered rather than reported as sent. The release also prepares the 6.x line for Wolverine 7.0's one-chain-per-handler model: the classic combined-handler mode is marked obsolete, a startup warning appears for combined handlers, and an opt-in assertion can fail the build on them. The durable outbox now handles each tenant database separately, so a slow tenant no longer stalls the others.

Real-world use

  • An Aspire-hosted service that registers PostgreSQL or SQL Server message stores by connection-string name.
  • A multi-tenant SaaS backend where one slow tenant database should not hold back outbound messages for other tenants.
  • A background worker running sync or report jobs every few minutes on a dedicated timer agent.

Why it matters

Teams on Azure Service Bus, SNS or Kafka should expect unmappable messages to appear in dead-letter stores rather than disappear, and should check frequent schedules after upgrading. The new named-connection overloads also simplify configuration for Aspire-hosted apps.

This summary was generated by the agent from the original post on Wolverine releases. The full text and all rights belong to its author and publisher. Go to original

Related stories

Feedback

Found a bug or have an idea? Your message lands straight in my inbox.

Type of message