sql >> Base de Datos >  >> RDS >> PostgreSQL

ERROR:la fila es demasiado grande:tamaño 8168, tamaño máximo 8164

Esto se debe a que cada nuevo permiso amplía el nspacl columna del pg_namespace entrada para este esquema.

Ahora los bloques de tablas en PostgreSQL tienen un tamaño de 8kB, y cada fila de la tabla tiene que caber en un bloque, de ahí el límite.

En tablas normales eso no sería un problema, porque PostgreSQL almacena campos de gran tamaño de longitud variable "fuera de línea" en los llamados TOSTADA mesas. Pero no hay tablas TOAST para los catálogos del sistema, por lo que esta ruta de escape está cerrada.

Diría que estás llegando a este límite debido a un mal diseño. En lugar de otorgar a cada uno de los roles acceso al esquema individualmente, use una jerarquía de roles, asigne sus muchos roles a grupos y otorgue permisos de esquema a nivel de grupo.