diff options
author | Nathan Bossart | 2024-09-21 20:17:46 +0000 |
---|---|---|
committer | Nathan Bossart | 2024-09-21 20:17:46 +0000 |
commit | 6aa44060a3c94ee10273bb8a89e98a5bb2fbbacb (patch) | |
tree | 860a2df0a7b7b30c95acdf9ad8d0a8b7eaeb0dcd /src/backend | |
parent | c4d5cb71d229095a39fda1121a75ee40e6069a2a (diff) |
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
Diffstat (limited to 'src/backend')
-rw-r--r-- | src/backend/catalog/catalog.c | 4 |
1 files changed, 1 insertions, 3 deletions
diff --git a/src/backend/catalog/catalog.c b/src/backend/catalog/catalog.c index 6c39434a306..d6b07a78655 100644 --- a/src/backend/catalog/catalog.c +++ b/src/backend/catalog/catalog.c @@ -300,9 +300,7 @@ IsSharedRelation(Oid relationId) relationId == TablespaceOidIndexId) return true; /* These are their toast tables and toast indexes */ - if (relationId == PgAuthidToastTable || - relationId == PgAuthidToastIndex || - relationId == PgDatabaseToastTable || + if (relationId == PgDatabaseToastTable || relationId == PgDatabaseToastIndex || relationId == PgDbRoleSettingToastTable || relationId == PgDbRoleSettingToastIndex || |