On Tue, Apr 12, 2011 at 10:50 PM, Jarrod Roberson <[email protected]
> wrote:

> I have tried everything and I still get a flurry of "[Gitorious
> Processor] fail in PushProcessor" emails every night.
>

Jarrod,
The PushProcessor should handle a dropped database connection; it will call
verify_connections! when it receives a message, which should make sure the
database connection is alive. Is your server under very high load? I can
imagine things like this happening if the server is short on memory.

One way to deal with this could be to restart the poller process every now
and then. On the gitorious.org servers, this process will consume quite a
lot of memory after a while - we use Monit (http://mmonit.com/monit/) to
restart the poller whenever it consumes more than 500MB of RAM.

If you have a init.d script that can restart your poller, it shouldn't take
you more than half an hour or so to set up Monit to restart the process. A
Monit recipe would look like this:

check process git-poller with pidfile
/var/www/gitorious/app/tmp/pids/poller0.pid
  start program = "/etc/init.d/poller start" as uid git and gid git
  stop program = "/etc/init.d/poller stop" as uid git and gid git
  if totalmem is greater than 500.0 MB for 3 cycles then restart
  if 5 restarts within 8 cycles then timeout

Most distros have monit in their repositories, and installing it is a matter
of:

- yum/apt-get install monit
- enable monit to run as a daemon (monitrc or equivalent)
- use chkconfig/update-rc.d to make it start/stop automatically
- make monit load your recipe (put it inside /etc/monit.d/)


> Very frustruating, I don't even know if these are having some kind of
> negative effect on my system?
>

The events on Gitorious rely on this processor to do its work, so you want
it to work properly. The Git side of things will work without it though.

Cheers,
- Marius

-- 
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to
[email protected]

Reply via email to