I want to apologize in advanced, but I am not very experienced with MassTransit. I need help creating quorum queue and set "ha-mode" of the queue to "all" for MassTransit 8.0.15
My code is:
services.AddMassTransit(mt =>
{
mt.AddConsumer(typeof(FileConsumer))
.Endpoint(e => { e.Name = "my-queue"; e.InstanceId = ""; });
mt.UsingRabbitMq((context, rmq) =>
{
rmq.Host(rabbitMqHost, host =>
{
host.Username(userName);
host.Password(password);
});
rmq.ConfigureEndpoints(context);
});
});
Any help will be appreciated. Thanks
I tried with adding: rmq.SetQueueArgument("x-queue-type", "quorum"); rmq.SetQueueArgument("x-ha-mode", "all");
but it didn't worked
I believe ha-mode
is only for classic queues. Quorum queues are completely different. You can configure receive endpoints to use quorum queues by adding a configure endpoints callback:
mt.AddConfigureEndpointsCallback((name, cfg) =>
{
if (cfg is IRabbitMqReceiveEndpointConfigurator rmq)
rmq.SetQuorumQueue();
});