Jaakko Rajaniemi wrote:
> DBQueueManager for JabberQueueHandler can hang on some cases. I'm
quite sure
> that the line 58 (
>
http://gitorious.org/laconica/mainline/blobs/master/lib/dbqueuemanager.php)
> causes the problem. The line is:
>
> $notice = $this->_nextItem($queue, null);

Seems to me it's a bug. Even when it doesn't hang, it sucks up 100%
CPU and puts a massive load on the database. I am running with some
modifications that solve both problems, which I will commit when I've
tested for a bit longer.

> I can think of at least two ways to fix this:
> 1. replace the null with some timeout
> 2. change _netItem function to service XMPP buffer

The first is partially the answer - it should definitely have the
timeout. It also needs a sleep within the loop within nextItem though,
to prevent the heavy (and pointless) CPU and database usage.

Cheers,

Ciaran
_______________________________________________
Laconica-dev mailing list
[email protected]
http://mail.laconi.ca/mailman/listinfo/laconica-dev

Reply via email to