How to disable noAck while utilizing direct reply-to functionality?
Nobody has claimed this yet.
Assessment
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Newbie friendliness
- 30/100
- Issue type
- Bug
- Clarity
- Mostly clear
- Activity status
- Stale
- Tech stack
- cpp, rabbitmq
Research direction
Start with the RabbitMQ direct reply-to documentation and the rmqcpp createConsumer call shown in the issue, especially replyToConsumerConfig and MessageGuard. Determine whether the library exposes noAck for this consumer type and compare that behavior with the broker error. Done means the supported configuration or limitation is clearly established and documented.
Written by the indexing model from the issue text.
Description
I'm trying to implement the Direct Reply-to feature:
class ReplyToMessageConsumer {
private:
bool processMessage(const rmqt::Message& message)
{
std::string payload((const char *)message.payload(), message.payloadSize());
std::cout << "Message was consumed: " << payload << std::endl;
return true;
}
public:
ReplyToMessageConsumer() {}
void operator()(rmqp::MessageGuard& messageGuard)
{
if (processMessage(messageGuard.message())) {
messageGuard.ack();
}
else {
messageGuard.nack();
}
}
};
...
rmqt::QueueHandle replyToQueue = topology.addPassiveQueue("amq.rabbitmq.reply-to");
rmqt::Result<rmqa::Consumer> replyToConsumerResult =
vhost->createConsumer(
topology,
replyToQueue,
ReplyToMessageConsumer(),
replyToConsumerConfig
);
However RMQ broker reports an error:
2024-02-06 12:01:03.888100+00:00 [error] <0.1343.0> operation basic.consume caused a channel exception precondition_failed: reply consumer cannot acknowledge
How do I set noAck = false?
- Dominant language
- C++
- Stars
- 106
- Forks
- 32
- Avg merge
- 9h 6m
- Merged PRs (30d)
- 4
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from bloomberg/rmqcpp
-
Difficulty 2/5 1-3 hours Newbie friendliness 45/100
-
New version release Open
Difficulty 4/5 3-5 days Newbie friendliness 25/100
-
Difficulty 3/5 1-2 days Newbie friendliness 42/100
-
Difficulty 4/5 3-5 days Newbie friendliness 35/100
-
Difficulty 3/5 1-2 days Newbie friendliness 35/100
All issues in bloomberg/rmqcpp
Similar issues
-
Difficulty 1/5 Under an hour Newbie friendliness 90/100
AXERA-TECH/ax-llm#77 ·
-
Difficulty 1/5 Under an hour Newbie friendliness 90/100
games-on-whales/wolf#509 ·
-
Difficulty 2/5 1-3 hours Newbie friendliness 74/100
-
bug-unconfirmed
Difficulty 2/5 1-3 hours Newbie friendliness 76/100
-
Difficulty 2/5 1-3 hours Newbie friendliness 74/100
NVIDIA/cuda-samples#453 ·