sql >> Databasteknik >  >> RDS >> PostgreSQL

FEL:raden är för stor:storlek 8168, maxstorlek 8164

Detta beror på att varje ny behörighet utökar nspacl kolumnen i pg_namespace post för detta schema.

Nu har tabellblock i PostgreSQL en storlek på 8kB, och varje tabellrad måste passa in i ett block, därav gränsen.

I normala tabeller skulle det inte vara ett problem, eftersom PostgreSQL lagrar överdimensionerade fält med variabel längd "out of line" i så kallade ROSTA tabeller. Men det finns inga TOAST-tabeller för systemkataloger, så denna utrymningsväg är stängd.

Jag skulle säga att du går in i denna gräns på grund av en dålig design. Istället för att ge var och en av rollerna åtkomst till schemat individuellt, använd en hierarki av roller, tilldela dina många roller till grupper och ge schemabehörigheter på gruppnivå.




  1. Dapper eller MySql hittar inte lagrade procedurer som innehåller ett punkt.

  2. Mysql Regular Expression-sökning utan upprepade tecken

  3. Hur man installerar cx_Oracle på El Capitan

  4. skyddar webbläsare användarnas IP-adress?