[ejabberd] pubsub_item.DAT getting big

Stephan Maihöfer sma at turtle-entertainment.de
Mon Sep 29 19:44:39 MSD 2008


> in ejabberd-2.0.2, pubsub_item is disk_only by default.
> this table handles published items, and have nothing to do 
> with offline messages.

it even is a problem with disk-only storage and we are
using 2.0.2 already. the server starts to get very unresponsive
once that file reaches areong 800mb (2gig of RAM).
to restart the server in a timely fashion i have to stop
it (most of the time kill -9 it) then move away the
old database, copy over stuff i need (muc_rooms for example)
and restart the server from scratch...otherwise starting
the server takes about 20 minutes with a database this
big (even with disk_only storage). this is pretty unacceptable
given that (at the moment) the server grinds to a halt
on a more than weekly basis because of this issue.

> default configuration comes with persistent items (stores 10 
> last published items on each node).

yeah, that is what i meant, though all our nodes
are configured with #persist_items=0 and #max_items=2
it still seems to hold 10 items for each node, this makes
the table massive.

> pubsub_item is also used to store PEP items.
> do you mean you changed the default configuration ?

if it is possible to change it from the node configuration,
or, if needs be, the ejabberd config file, how do i do that?
i mean...it does not seem as if ejabberd respects node
configuration settings regarding #max_items.

> to lower size of that table you can disable PEP plugin and/or 
> set pubsub#max_items to 1 in 2.0.x, due to item cache 
> unavailability, disabling persistent-item is not supported.

yeah, that is what i figured. still, how can i make it
that way that as few items as possible are stored in
this table, an what happens if i reduce the #max_items
to 2 and i publish 3 items at once...are they only being
stored once they are delivered?


More information about the ejabberd mailing list