Use LEFT JOINs in some system views in case referenced row doesn't exist.
In particular, left join to pg_authid so that rows in pg_stat_activity
don't disappear if the session's owning user has been dropped.
Also convert a few joins to pg_database to left joins, in the same spirit,
though that case might be harder to hit. We were doing this in other
views already, so it was a bit inconsistent that these views didn't.
Oskari Saarenmaa, with some further tweaking by me
Discussion: <56E87CD8.60007@ohmu.fi>
Branch
------
master
Details
-------
http://git.postgresql.org/pg/commitdiff/8299471c37fff0b0f5a777a12f920125310c0efe
Modified Files
--------------
src/backend/catalog/system_views.sql | 20 +++++++++-----------
src/include/catalog/catversion.h | 2 +-
src/test/regress/expected/rules.out | 20 +++++++++-----------
3 files changed, 19 insertions(+), 23 deletions(-)