"PostgreSQL Bugs List" <pgsql-bugs(at)postgresql(dot)org> writes:
> If current backend crash after registers on the notification condition
> <name> ( 'LISTEN <name>' SQL command ) row in the pg_listener still exists;
This is not a bug, it's the intended recovery path. The row will go
away as soon as some other backend tries to signal it and finds the
PID no longer exists.
regards, tom lane