[
https://issues.apache.org/jira/browse/ARTEMIS-5686?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Domenico Francesco Bruscino resolved ARTEMIS-5686.
--------------------------------------------------
Fix Version/s: 2.45.0
Resolution: Fixed
> There is an exception which occurs because of the setting
> "retroactive-message-count"
> -------------------------------------------------------------------------------------
>
> Key: ARTEMIS-5686
> URL: https://issues.apache.org/jira/browse/ARTEMIS-5686
> Project: ActiveMQ Artemis
> Issue Type: Bug
> Components: Broker, Configuration
> Affects Versions: 2.42.0
> Reporter: Olga Kostina
> Assignee: Justin Bertram
> Priority: Minor
> Labels: pull-request-available
> Fix For: 2.45.0
>
> Time Spent: 20m
> Remaining Estimate: 0h
>
> If the name of the address starts with {{address}} and there is a
> retroactive-message-count setting in this address, which value is more than
> 0, there is an exception when the application is started:
> {noformat}
> java.lang.StringIndexOutOfBoundsException: begin 19, end 18, length 40
> at java.base/java.lang.String.checkBoundsBeginEnd(String.java:4606)
> at java.base/java.lang.String.substring(String.java:2709)
> at
> org.apache.activemq.artemis.api.core.management.ResourceNames.decomposeRetroactiveResourceAddressName(ResourceNames.java:76)
> at
> org.apache.activemq.artemis.core.postoffice.impl.PostOfficeImpl$1.onChange(PostOfficeImpl.java:582)
> at
> org.apache.activemq.artemis.core.settings.impl.HierarchicalObjectRepository.registerListener(HierarchicalObjectRepository.java:331)
> at
> org.apache.activemq.artemis.core.postoffice.impl.PostOfficeImpl.registerRepositoryListenerForRetroactiveAddress(PostOfficeImpl.java:594)
> at
> org.apache.activemq.artemis.core.postoffice.impl.PostOfficeImpl.internalAddressInfo(PostOfficeImpl.java:566)
> at
> org.apache.activemq.artemis.core.postoffice.impl.PostOfficeImpl.addAddressInfo(PostOfficeImpl.java:534)
> at
> org.apache.activemq.artemis.core.postoffice.impl.PostOfficeImpl.createRetroactiveResources(PostOfficeImpl.java:611)
> at
> org.apache.activemq.artemis.core.postoffice.impl.PostOfficeImpl.internalAddressInfo(PostOfficeImpl.java:563)
> at
> org.apache.activemq.artemis.core.postoffice.impl.PostOfficeImpl.addAddressInfo(PostOfficeImpl.java:534)
> at
> org.apache.activemq.artemis.core.server.impl.ActiveMQServerImpl.addAddressInfo(ActiveMQServerImpl.java:3980)
> at
> org.apache.activemq.artemis.core.server.impl.ActiveMQServerImpl.addOrUpdateAddressInfo(ActiveMQServerImpl.java:3988)
> at
> org.apache.activemq.artemis.core.server.impl.ActiveMQServerImpl.deployAddressesFromConfiguration(ActiveMQServerImpl.java:3805)
> at
> org.apache.activemq.artemis.core.server.impl.ActiveMQServerImpl.deployReloadableConfigFromConfiguration(ActiveMQServerImpl.java:4786)
> at
> org.apache.activemq.artemis.core.server.impl.ActiveMQServerImpl.reloadConfigurationFile(ActiveMQServerImpl.java:4705)
> at
> org.apache.activemq.artemis.core.server.impl.ActiveMQServerImpl.lambda$initialisePart1$17(ActiveMQServerImpl.java:3392)
> at
> org.apache.activemq.artemis.core.server.reload.ReloadManagerImpl$ReloadRegistry.check(ReloadManagerImpl.java:127)
> at
> org.apache.activemq.artemis.core.server.reload.ReloadManagerImpl.tick(ReloadManagerImpl.java:68)
> at
> org.apache.activemq.artemis.core.server.reload.ReloadManagerImpl.run(ReloadManagerImpl.java:49)
> at
> org.apache.activemq.artemis.core.server.ActiveMQScheduledComponent.runForExecutor(ActiveMQScheduledComponent.java:327)
> at
> org.apache.activemq.artemis.core.server.ActiveMQScheduledComponent.lambda$bookedRunForScheduler$3(ActiveMQScheduledComponent.java:334)
> at
> org.apache.activemq.artemis.utils.actors.OrderedExecutor.doTask(OrderedExecutor.java:59)
> at
> org.apache.activemq.artemis.utils.actors.OrderedExecutor.doTask(OrderedExecutor.java:32)
> at
> org.apache.activemq.artemis.utils.actors.ProcessorBase.executePendingTasks(ProcessorBase.java:69)
> at
> java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
> at
> java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
> at
> org.apache.activemq.artemis.utils.ActiveMQThreadFactory$1.run(ActiveMQThreadFactory.java:120){noformat}
> For this mechanism, Artemis creates additional resources, including the
> address {{$.artemis.internal.address2.address.retro}}, then it tries to find
> the original address name in this name and crashes because the address starts
> with {{address}}.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]
For further information, visit: https://activemq.apache.org/contact