Skip to content

Questions? Join our Discord.

JasperFx

Formal support for Wolverine, Marten, and Polecat is available through our Support Plans.

Logical message deduplication New in 1.14.0

Stop the same business intent running twice with Wolverine logical message deduplication (6.31+). The key is a domain fact, not Wolverine metadata: the cart, invoice or scheduled occurrence that makes two requests the same, declared once on the message with [DeduplicationIdentity] or ByMessage<T>, never a fresh Guid, Envelope.Id or send time. Covers [Deduplicated] on handlers, Wolverine.HTTP endpoints (Idempotency-Key header, 409 by default, DuplicateStatusCode) and gRPC RPCs; EnableMessageDeduplication, DeduplicationWindow and the wolverine_deduplication table; id precedence; Required and MissingDeduplicationIdException; RequireDeduplicationId(filter); the storage matrix (not Oracle, RavenDb or CosmosDb); the flag-off warning; the compensated and transactional claim paths and the concurrent-caller race; and the testing traps.

Use when a command, endpoint or RPC must not run twice for one business intent.

Skill details

  • Skill name: wolverine-messaging-logical-deduplication
  • Applies to: wolverine
  • Tags: messaging, deduplication, idempotency, idempotency-key, Deduplicated, DeduplicationId, http, grpc, durability, marten, polecat, fisher, testing
  • Added in: 1.14.0
  • License: Proprietary. Copyright JasperFx Software LLC.

Proprietary. Copyright © JasperFx Software LLC. See LICENSE for terms.