これは、新しい権限がそれぞれnspacl
を拡張するためです。 pg_namespace
の列 このスキーマのエントリ。
現在、PostgreSQLのテーブルブロックのサイズは8kBであり、各テーブル行は1つのブロックに収まる必要があるため、制限があります。
通常のテーブルでは、PostgreSQLは可変長の特大フィールドをいわゆるトースト テーブル。ただし、システムカタログ用のTOASTテーブルがないため、このエスケープルートは閉じられています。
デザインが悪いので、この制限にぶつかっていると思います。各役割にスキーマへのアクセスを個別に許可するのではなく、役割の階層を使用して、多数の役割をグループに割り当て、グループレベルでスキーマのアクセス許可を付与します。