Peter,
I don't know if this is directly related to your problem, but the
version of dbd_db_pg_notifies you are using has a memory leak in it.
The memory leak causes a small amount of memory to be leaked every time
pg_notifies is called from your perl code. This memory leak affected
several versions of Pg-DBD, up to version 1.49. It should be fixed in
later versions of Pg-DBD.
The fix is a one line change; a patch file is attached.
I hope this is helpful,
Steve Marshall