[ https://issues.apache.org/jira/browse/AMQ-4480?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13637999#comment-13637999 ]
Torsten Mielke commented on AMQ-4480: ------------------------------------- This seems to be caused by the default file and dir name lengths used when converting dests to filenames. In code these are defined in activemq-broker/src/main/java/org/apache/activemq/util/IOHelper.java as {code:title=IOHelper.java} static { MAX_DIR_NAME_LENGTH = Integer.getInteger("MaximumDirNameLength", 200); MAX_FILE_NAME_LENGTH = Integer.getInteger("MaximumFileNameLength", 64); } {code} *Possible workarounds:* - Don't use perDestination=true with mKahaDB - don't use destination names > 50 characters. - Pass the JVM option -DMaximumFileNameLength=150 to the broker JVM. > mkahadb with perDestination="true" lazily loads kahadb journal files after > startup > ---------------------------------------------------------------------------------- > > Key: AMQ-4480 > URL: https://issues.apache.org/jira/browse/AMQ-4480 > Project: ActiveMQ > Issue Type: Bug > Components: Broker > Affects Versions: 5.7.0, 5.8.0 > Reporter: Torsten Mielke > > Using the following mKahaDB config: > {code:xml} > <persistenceAdapter> > <mKahaDB directory="${activemq.data}/kahadb"> > <filteredPersistenceAdapters> > <filteredKahaDB perDestination="true"> > <persistenceAdapter> > <kahaDB journalMaxFileLength="32mb" /> > </persistenceAdapter> > </filteredKahaDB> > </filteredPersistenceAdapters> > </mKahaDB> > </persistenceAdapter> > {code} > Note perDestination="true". > Using that configuration and sending a message to a JMS queue whose name is > longer than 50 characters, this destination's messages won't be loaded > eagerly upon a restart of the broker. As a result that destination does not > show up in JMX. > Only when a producer or consumer connects to this destination, this > destination gets loaded from kahadb as this broker log output confirms > {noformat} > INFO | KahaDB is version 4 > INFO | Recovering from the journal ... > INFO | Recovery replayed 1 operations from the journal in 0.0010 seconds. > {noformat} > This log output is written after the broker had completely started up. -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira