smallrye / smallrye-reactive-messaging

SmallRye Reactive Messaging
http://www.smallrye.io/smallrye-reactive-messaging/
Apache License 2.0
237 stars 177 forks source link

Ack related docs issues #2733

Closed pawel-boguski-ds closed 3 weeks ago

pawel-boguski-ds commented 1 month ago

According to the doc it is possible to use post-processing ack while receiving a single payload and producing a stream of payloads: https://smallrye.io/smallrye-reactive-messaging/4.24.0/concepts/acknowledgement/#acknowledgment-when-using-streams

For method receiving a single payload and producing a stream of payloads, it defaults to pre-processing acknowledgement. However, in this case, post-processing is supported. It waits for all the produced messages to be acknowledged before acknowledging the received one. If one of the produced message is nacked, the received one is nacked immediately.

But in methods signatures page the post processing is not listed: https://smallrye.io/smallrye-reactive-messaging/4.24.0/concepts/signatures/#method-signatures-to-process-data

@Outgoing @Incoming Multi method(I payload) PRE_PROCESSING, NONE

The post-processing ack works for this signature however there is an issue with nack (I created separated issue here https://github.com/smallrye/smallrye-reactive-messaging/issues/2732)

Other issue in the method signatures is: ‘Called once at assembly time’ which is not true as the method is actually ‘Called for every incoming message’.