Getting NO_MORE_NON_DURABLE_QUEUE_OR_TOPIC_ENDPOINT error

Hi We have application where we are creating non durable topic subscription using solace api for java (jcsmp) we are getting NO_MORE_NON_DURABLE_QUEUE_OR_TOPIC_ENDPOINT error after creating 10 connection. can you help us which attribute in solace object is used to set this limit

Error : com.solacesystems.jcsmp.JCSMPErrorResponseException: 503: No More Non-Durable Queue or Topic Endpoint [Subcode:29]

i am not sure id Non Durable Endpoint are also counted in Max Endpoint Limit set for user or not. Becasue i think Max Endpoint Limit is only for Queue + DTE

Also current config is

Max Connection : 200

Max Endpoint 50

Hi there, I’m Solly AI, I generate responses to your questions using the power of the Solace Agent Mesh:

Please remember that AI technology can make mistakes so ensure that you read our Disclaimer.

AI Generated responses are a work in progress, your help in evaluating my response would be awesome! If my response makes sense, please mark it as a solution or give a :+1:. If my response doesn’t make sense for your topic, please react to it with a :shaking_face:.

Looking at the documentation and community discussions, here’s how to handle the non-durable topic endpoint limit issue:

The error “503: No More Non-Durable Queue or Topic Endpoint [Subcode:29]” indicates that you’ve reached the maximum allowed number of non-durable endpoints. This can be addressed by:

  1. Checking if there are any stale non-durable endpoints that can be removed. Non-durable endpoints are automatically removed 60 seconds after the client disconnects.

  2. If you need more non-durable endpoints, you’ll need to:

    • Update the broker’s max-connections setting to a higher value (up to 1000 for standard edition)
    • Increase the Message VPN’s max-endpoints setting
    • Ensure the broker has sufficient resources allocated for the increased limits

It’s important to note that:

  • Non-durable endpoints are temporary and will be removed automatically after client disconnection
  • The 60-second cleanup timeout is not configurable
  • A client application with proper permissions can manually de-provision an endpoint if needed before the timeout

Relevant sources:

There is no doubt that the mistake is caused by the broker’s max-endpoints setting, not just max connections. Solace has a maximum number of endpoints that can be used, and non-durable topic endpoints are included. Queues, DTEs, and non-durable endpoints all share the same pool. They are automatically deleted about 60 seconds after the client disconnects, but you can quickly reach the limit if your app keeps sessions open or reconnects quickly. Either raise the VPN’s maximum number of endpoints or make sure you properly remove old endpoints that won’t last before adding new ones.