Search code examples
gorabbitmqquorum

create queue quorum rabbitmq in golan by streadway module


I want to create queue Quorum in Rabbitmq with GO and I wrote this code:

deliveries, err := c.channel.Consume(
    queue.Name, // name
    c.tag,      // consumerTag,
    false,      // noAck
    false,      // exclusive
    false,      // noLocal
    false,      // noWait
    amqp.Table{
        "x-queue-type": "quorum",
    }, // arguments )

but queue made of type classic not quorum


Solution

  • You need to use the QueueDeclare function to declare a queue with arguments before you consume from it.

    args := Table{"x-queue-type": "quorum"}
    channel.QueueDeclare(queue.Name,
        true,   // durable
        false,  // autoDelete
        false,  // exclusive
        false,  // wait for response
        args    // queue arguments
    )