pg_listener supports the LISTEN and NOTIFY commands. A listener creates an entry in pg_listener for each notification name it is listening for. A notifier scans pg_listener and updates each matching entry to show that a notification has occurred. The notifier also sends a signal (using the PID recorded in the table) to awaken the listener from sleep.
Table 3-20. pg_listener Columns
Name | Type | References | Description |
---|---|---|---|
relname | name | Notify condition name. (The name need not match any actual relation in the database; the term "relname" is historical.) | |
listenerpid | int4 | PID of the backend process that created this entry. | |
notification | int4 | Zero if no event is pending for this listener. If an event is pending, the PID of the backend that sent the notification. |