The semantics you described wouldn't be what you'd want for either queues or topics, and if your developers really did implement that, I expect you'd have problems long before KahaDB disk space became an issue.
Do you have any consumers (including offline durable subscribers) on those topics? If you do, and you have topic enqueues without dequeues, then that explains your KahaDB files staying around. If there are zero consumers, then it's completely expected that you'd have topic enqueues without dequeues, and your problem probably lies somewhere else. (The DLQ is a frequent offender.) You can find out which destinations are keeping alive which files by using the instructions in http://activemq.apache.org/why-do-kahadb-log-files-remain-after-cleanup.html What version of ActiveMQ are you using? There have been a few improvements to KahaDB log GCing in 5.13.x versions, so if you're using an older version and your problem turns out to be one of the things that were improved, you may get a fix by upgrading. (But figure out what your problem is first; upgrades for the blind hope of a fix should be avoided while you have options to investigate the root cause, and you do in this case.) Also, if you haven't read the wiki pages that describe queues and topics and the differences between them, please read those pages. Debugging this will be very frustrating for you (and us) if you don't know that basic info, because the expected behavior is different in many cases between the two. Tim On Jul 21, 2016 6:56 AM, <pete.oconn...@ihsystems.co.uk> wrote: > Hi All, > > I'm wondering if someone can point me in the right direction, I'm > struggling to find how to reduce the size taken by the Kahadb log > files. > > I've been searching online and everything points to messages that are > sat on the queue that have not been ack'd by a consumer. I'm using > Hawtio to look at my topic statistics and I can see my Enqueue size > for a number of topics is high but the Dequeue is 0 for all. The queue > size is also 0. I've attached a screenshot of my topics. > > I'm not the developer of this system, simply a member of the team > investigating a lack of resources and trying to find a solution either > manually or programatically which I can pass onto our dev engineers to > implement a fix. > > Am I able to remove/ack messages on my topics to start to dequeue them > without doing any programming? I'm assuming our dev's are reading the > messages but aren't acking them as there's multiple consumers (is this > right that you wouldn't ack them as you wouldn't know if you were the > last consumer to read it?). > > Thanks in advance! > > Pete >