Hackers,

During the version 14 development period, a few checks of toasted attributes 
were written but never committed.  For the version 15 development cycle, I'd 
like to consider extending the checks of toasted attributes.  First, no toasted 
attribute should ever have a rawsize larger than the 1GB varlena limit.  
Second, no compressed toasted attribute should have an extsize indicating that 
the toast expanded during toasting.  Such a extsize could mean the compression 
code is malfunctioning, or that the extsize or rawsize fields are corrupt.  
Third, any compressed attribute should have a valid compression method ID.

These checks are cheap.  Actually retrieving the compressed toasted data and 
checking that it uncompresses correctly would have very different performance 
implications, but that is not included in this patch.

Attachment: v1-0001-Adding-more-toast-pointer-checks-to-amcheck.patch
Description: Binary data


—
Mark Dilger
EnterpriseDB: http://www.enterprisedb.com
The Enterprise PostgreSQL Company



Reply via email to