Skip to content

Proper way of handling terminal stream failures with JMS connector + IBM mq? #3160

@Alfrederson

Description

@Alfrederson

With jms connection factory configured to use client auto reconnect + auto acknowledge + manual acknowledgement strategy under MQ, each reconnection will count as a failure inside a multi inside JMSSource, and after the failure count exceeds the value specified in retry.max-retries the consumer will stop being "ressurected". There seems to be no clear way of detecting that this happened other than polling the HealthCenter class, then it will give a general "not ok" sign and it will be possible to figure out which specific consumer was killed. Is It possible to restart a specific consumer indefinitely or am I supposed to count on the application's health check endpoints to give a 503 so that the host (i.e kubernetes) can pick It up and restart It? I can also terminate the application inside a multi that checks the liveness status every few seconds and have no issue with doing that, but I want to know If this is the way to handle terminal failures (which are really just benign reconnection events)

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions