[ 
https://issues.apache.org/jira/browse/CAMEL-17551?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Suzanne Becker updated CAMEL-17551:
-----------------------------------
    Summary: camel-pulsar: Pause Pulsar consumers when a Pulsar route is 
suspended  (was: camel-pulsar: Pause Pulsar consumers when a consumer is 
suspended)

> camel-pulsar: Pause Pulsar consumers when a Pulsar route is suspended
> ---------------------------------------------------------------------
>
>                 Key: CAMEL-17551
>                 URL: https://issues.apache.org/jira/browse/CAMEL-17551
>             Project: Camel
>          Issue Type: Improvement
>          Components: camel-pulsar
>         Environment: Camel 3.12.0, Pulsar 2.7.2
>            Reporter: Suzanne Becker
>            Priority: Minor
>
> *Proposed change*
> When a Pulsar route is suspended/resumed, the route's PulsarConsumer should 
> pause() and resume() its Pulsar consumers.
> *Background*
> Camel's PulsarConsumer is not currently suspendable. When `suspend()` is 
> called on a Pulsar endpoint/route, the route and its PulsarConsumer are 
> stopped instead, which in the current implementation will stop+close the 
> underlying Pulsar consumers.
> As a result, in-flight exchanges cannot complete because the Pulsar consumers 
> can't ack messages when in a closed state. 
> Pulsar consumers can be paused and resumed instead. A paused Pulsar consumer 
> does not request any more messages from the broker, but it can still 
> communicate with the broker, for example to ack messages it's already 
> received. (However, after calling .pause() on a Pulsar consumer, it will 
> finish processing any messages that were buffered in its receiver queue – up 
> to `receiverQueueSize` # of messages). 



--
This message was sent by Atlassian Jira
(v8.20.1#820001)

Reply via email to