Remove pg_authid's TOAST table.
pg_authid's only varlena column is rolpassword, which unfortunately
cannot be de-TOASTed during authentication because we haven't
selected a database yet and cannot read pg_class. By removing
pg_authid's TOAST table, attempts to set password hashes that
require out-of-line storage will fail with a "row is too big"
error instead. We may want to provide a more user-friendly error
in the future, but for now let's just remove the useless TOAST
table.
Bumps catversion.
Reported-by: Alexander Lakhin
Reviewed-by: Tom Lane, Michael Paquier
Discussion: https://postgr.es/m/89e8649c-eb74-db25-7945-6d6b23992394%40gmail.com
Branch
------
master
Details
-------
https://git.postgresql.org/pg/commitdiff/6aa44060a3c94ee10273bb8a89e98a5bb2fbbacb
Modified Files
--------------
src/backend/catalog/catalog.c | 4 +---
src/include/catalog/catversion.h | 2 +-
src/include/catalog/pg_authid.h | 2 --
src/test/regress/expected/create_index.out | 14 +++++++-------
src/test/regress/expected/misc_sanity.out | 5 ++++-
src/test/regress/expected/tablespace.out | 12 ++++++------
src/test/regress/sql/create_index.sql | 10 +++++-----
src/test/regress/sql/misc_sanity.sql | 2 ++
src/test/regress/sql/tablespace.sql | 8 ++++----
9 files changed, 30 insertions(+), 29 deletions(-)