qpid-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Jakub Scholz <ja...@scholz.cz>
Subject Re: How to enable persistent message store in qpid-cpp-1.35.0
Date Fri, 21 Oct 2016 07:13:40 GMT
AFAIK the paging is turned off by default. So without specifying the paging
when creating the queue, everything will be kept in RAM. And when you run
out of memory the broker will crash - on Linux it will be usually killed by
the system. The paging and the persistent message store are now completely
separated. So even when your messages are persisted to the disk, they are
still kept in the memory (unless you turn the paging on).
If your broker is stopped because it run out of memory, it might not be
trivial to start it again. Because in case your messages are persisted on
disk, the broker will try to load them again during start and will very
likely run again out of memory during the startup (unless you freed some
additional memory by stopping some other applications). So if you are not
sure that you will fit into memory, you should probably enable the paging
when creating the queues.

Regards
Jakub

On Oct 21, 2016 12:40 AM, "rammohan ganapavarapu" <rammohanganap@gmail.com>
wrote:

> Jakub,
>
> Thanks for pointing me to right docs, so is there any default settings for
> how much/many messages can be in RAM and then flush to disk if i don't give
> any options while creating queues? if i dont create queues with "paging"
> options what is behavior of broker?
>
> Thanks,
> Ram
>
> On Thu, Oct 20, 2016 at 3:20 PM, Jakub Scholz <jakub@scholz.cz> wrote:
>
> > Hi,
> >
> > Do you have the module installed in the path you mentioned? If yes, then
> > you should be able to load the module using the option
> > "--load-module=/usr/lib64/qpid/daemon/linearstore.so" or by placing
> > "load-module=/usr/lib64/qpid/daemon/linearstore.so" into your config
> file.
> > However, I believe that usually the store should be loaded by default
> when
> > it is installed. That is unless you specified that you want to start the
> > broker without any modules with the no-module-dir option. If the module
> is
> > loaded, you should see in your log file something like this:
> > 2016-10-20 22:15:25 [Store] notice Linear Store: Store module
> initialized;
> > store-dir=/var/lib/qpidd/store
> >
> > Additionally to loading the store, you need to have the queues created as
> > durable and send the messages as durable/persistent. Otherwise the
> > queues/messages will not use the persistent message store.
> >
> > Flow to disk feature has been removed some time ago. The functionality it
> > provided (offloading messages from memory to disk) is now provided by the
> > queue paging feature. Strangely, I can't find it described anywhere in
> the
> > Qpid C++ broker documentation. But you can have a look at my answer in
> this
> > thread -
> > http://qpid.2158936.n2.nabble.com/How-do-I-create-a-queue-
> > larger-than-available-RAM-td7643861.html
> > - it describes how to configure it and it should be still valid in
> 1.35.0.
> >
> > Regards
> > Jakub
> >
> > On Thu, Oct 20, 2016 at 11:56 PM, rammohan ganapavarapu <
> > rammohanganap@gmail.com> wrote:
> >
> > > Hi,
> > >
> > > How to enable persistent message store in qpid-cpp-1.35 do i have to
> > > install/load "/usr/lib64/qpid/daemon/linearstore.so"? also how to
> > > configure
> > > flow_to_disk policy?
> > >
> > >
> > > Thanks,
> > > Ram
> > >
> >
>

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message