The KahaDB index does not drop in size after increasing.  It just keeps
track of free pages and will re-use them.  So the index tends to grow as
large as it needs and hits a consistent point.  A large backlog of messages
will cause the index to increase to track all of the messages. There was at
one point a bug that caused the index to grow too large but that has been
fixed as of https://issues.apache.org/jira/browse/AMQ-6590

On Wed, Jul 12, 2017 at 1:38 AM, Tim Bain <tb...@alumni.duke.edu> wrote:

> Jakub,
>
> I had hoped that someone who knows the internals of KahaDB (not me) would
> respond, but since no one has...
>
> If the percent utilization dropped from 100% after the index rebuild, then
> that's a bug (because the percent utilization should be the same in an
> existing index and a rebuilt one) and it should be reported in JIRA.
>
> I wouldn't say the size of the index file in and of itself is inherently a
> bug; nothing says that a file that balloons large and then is no longer
> needed will necessarily come back down to its minimum possible size later,
> and it wouldn't surprise me if an index file was maintained as a
> sparsely-populated file of the same size when its contents shrink
> (otherwise, you'd spent lots of I/O operations just moving bytes around to
> compact it whenever its content shrunk.
>
> Tim
>
> On Jun 28, 2017 12:06 PM, "Jakub Korab" <jakub.korab.li...@gmail.com>
> wrote:
>
> > Sorry, that last paragraph should have read:
> > --
> > The thing that brought this to my attention was that storePercentUsage
> was
> > hitting 100% for a multi-GB max store size. I suspect this is due to some
> > crusty data in the indexes themselves - after 5993 x 8mb journals,
> perhaps
> > a 79mb *index* is not unreasonable. When the *indexes* are deleted and
> > rebuilt, they go down to 2mb.
> > --
> >
> > Jakub
> >
> >
> > On Tue, Jun 27, 2017 at 10:20 AM, Jakub Korab <
> jakub.korab.li...@gmail.com
> > >
> > wrote:
> >
> > > Hi all,
> > >
> > > I am seeing some odd behaviour in a 5.14.5 ActiveMQ instance that used
> > > mKahaDB - I have not seen this sort of thing before, and was wondering
> if
> > > anyone could shed some light on it.
> > >
> > > The directory listing below is for one fragment of an mKahaDB
> > > installation. It is configured for 8mb journal files, and accepts
> > messages
> > > for a single queue only. Messages are 60-80kb in size.
> > >
> > > What I am seeing is a very large index (db.data), often far in excess
> of
> > > the total size of the journals. The following is not uncommon to what
> is
> > > happening in other mKahaDB fragments:
> > >
> > > -rw-r--r-- 1 activemq activemq  8388608 Jun 19 18:07 db-5985.log
> > > -rw-r--r-- 1 activemq activemq  8388608 Jun 19 18:09 db-5986.log
> > > -rw-r--r-- 1 activemq activemq  8388608 Jun 19 18:11 db-5987.log
> > > -rw-r--r-- 1 activemq activemq  8388608 Jun 19 18:14 db-5988.log
> > > -rw-r--r-- 1 activemq activemq  8388608 Jun 19 18:16 db-5989.log
> > >
> > >
> > >
> > >
> > > *-rw-r--r-- 1 activemq activemq    99401 Jun 20 00:13
> > > db-5991.log-rw-r--r-- 1 activemq activemq  8388608 Jun 20 01:00
> > > db-5990.log-rw-r--r-- 1 activemq activemq      728 Jun 20 01:03
> > > db-5993.log-rw-r--r-- 1 activemq activemq  8388608 Jun 20 09:32
> > db-5992.log*-rw-r--r--
> > > 1 activemq activemq  3291400 Jun 20 17:54 db.redo
> > > *-rw-r--r-- 1 activemq activemq 79540224 Jun 20 17:54 db.data*
> > > -rw-r--r-- 1 activemq activemq  8388608 Jun 20 17:54 db-5994.log
> > >
> > > Points of note:
> > > - Total journal size is 67.2mb, indexes are 79.5mb.
> > > - db-5990.log is written after db-5991.log, db-5992.log after
> db-5993.log
> > > (non-sequential writes)
> > >
> > > The thing that brought this to my attention was that storePercentUsage
> > was
> > > hitting 100% for a multi-GB max store size. I suspect this is due to
> some
> > > crusty data in the indexes themselves - after 5993 x 8mb journals,
> > perhaps
> > > a 79mb journal is not unreasonable. When the journals are deleted and
> > > rebuilt, they go down to 2mb.
> > >
> > > Any ideas as to why the index is so large, and what might cause
> journals
> > > to be written out of order?
> > >
> > > Thanks,
> > >
> > > Jakub
> > >
> >
>

Reply via email to