diff --git a/src/Persistence/PostgresqlTests/Transport/external_message_tables.cs b/src/Persistence/PostgresqlTests/Transport/external_message_tables.cs index 626d500a..0f2378ce 100644 --- a/src/Persistence/PostgresqlTests/Transport/external_message_tables.cs +++ b/src/Persistence/PostgresqlTests/Transport/external_message_tables.cs @@ -47,6 +47,8 @@ public async Task can_create_basic_table() .UseWolverine(opts => { opts.UsePostgresqlPersistenceAndTransport(Servers.PostgresConnectionString, "external"); + + opts.Policies.UseDurableLocalQueues(); }).StartAsync(); var storage = host.Services.GetRequiredService() diff --git a/src/Persistence/Wolverine.RDBMS/Transport/ExternalMessageTableListener.cs b/src/Persistence/Wolverine.RDBMS/Transport/ExternalMessageTableListener.cs index 233cde52..2609f109 100644 --- a/src/Persistence/Wolverine.RDBMS/Transport/ExternalMessageTableListener.cs +++ b/src/Persistence/Wolverine.RDBMS/Transport/ExternalMessageTableListener.cs @@ -35,6 +35,10 @@ public ExternalMessageTableListener(ExternalMessageTable messageTable, IWolverin { durable.ShouldPersistBeforeProcessing = false; } + else if (receiver is ReceiverWithRules { Inner: DurableReceiver inner }) + { + inner.ShouldPersistBeforeProcessing = false; + } _cancellation = CancellationTokenSource.CreateLinkedTokenSource(_runtimeOptions.Durability.Cancellation);