reactor / reactor-rabbitmq

Reactor RabbitMQ
Apache License 2.0
157 stars 55 forks source link

AcknowledgableDelivery.ack() blocks #164

Closed patrickhuy closed 3 years ago

patrickhuy commented 3 years ago

When calling AcknowledgableDelivery.ack() with BlockHound active we can see that it directly calls into Channel.basicAck() which ends up calling SocketOutputStream.write which is a blocking operation.

Expected Behavior

Possibility to "reactivly" acknowledge a delivery without blocking.

Actual Behavior

No reactive way available - is there a recommended approach how to acknowledge messages without blocking in a reactive pipeline?

acogoluegnes commented 3 years ago

You can enable NIO in the Java client.