We are noticing that the concurrency property on a specific @JmsListener annotation is overwritten by the DefaultJmsListenerContainerFactory concurrency value which is set using the spring.jms.listener.concurrency property. This appears to occur in DefaultJmsListenerContainerFactory#initializeContainer.
We were hoping to override the concurrency for a specific @JmsListener while leaving the others on the default.
Good catch, this is due to initializeContainer that is applied after the settings of the endpoint have been applied. Flipping that with the setupListenerContainer call in createListenerContainer should be enough to fix the issue.
Ideally, we should have had a test to exercise this behaviour,