Subscriber not sending ack after DirectTransport set to False in CF

SasikumarSP
SasikumarSP Member Posts: 31 ✭✭
edited March 2020 in Connectors & Integrations #1

Hi,
Our subscriber was connected directly to topic and receiving messages. We have seen loss of messages so disabled DirectTransport in CF to create non-durable topic-endpoint. Now, we don't see message get delivered by subscriber and all spooled in non-durable. ACK window size getting reduced and it become zero. Do we need to do any changes in code to support guaranteed message delivery after DT disabled?

Comments

  • Aaron
    Aaron Member, Administrator, Moderator, Employee Posts: 522 admin

    That's interesting. When you created the Session, what ack mode did you use?

  • SasikumarSP
    SasikumarSP Member Posts: 31 ✭✭

    Hi Aaron, This issue is fixed after changing the mode to auto ack. Thank you !

  • Aaron
    Aaron Member, Administrator, Moderator, Employee Posts: 522 admin

    Great! Just FYI: I'd be careful using AUTO_ACK, unless you are doing all your processing in the JMS onMessage() callback method. If you are passing that message to another thread for processing, you should really use CLIENT_ACK, and ensure the processing thread acknowledges the message when it is done with it. That's a common JMS mistake..!