On Mon, Sep 14, 2026 at 12:26:54PM -0700, Bharath Rupireddy wrote: > v18-0001-Add-support-for-oid8-TOAST-values.patch: It looks good to me. > v18-0002-Add-battery-of-tests-related-oid8.patch: It looks good to me. > v18-0003-Add-support-for-TOAST-pointers-as-oid8.patch: It looks good to me.
Thanks. I have spent the day processing all these free, and finally applied the set. One thing that neither you nor Greg pointed out is a disturbance I have found in amcheck. The code relied on a vartag to decide the max chunk size of a TOAST blob: + max_chunk_size = ta->tag == VARTAG_ONDISK_OID8 + ? TOAST_OID8_MAX_CHUNK_SIZE + : TOAST_OID_MAX_CHUNK_SIZE; But that's wrong, because we want to check the sanity of the toast pointer itself. If the tag is corrupted for a reason or another, we could finish with an incorrect check. The correct way to handle this case is to retrieve the max chunk based on the type of chunk_id as defined in the cached toast_rel information, and also cross-check that the vartag matches with the chunk_id type. While on it, I have noticed a small mistake after commit 6e58d6356fcb in check_toasted_attribute(): a return is missing after the first report_toast_corruption(). Will adjust that.. > v18-0005-Add-check-for-2-32-oid8-chunk-values-across-the-.patch: It > looks good to me with a nit. It took me a while to figure out where > the f1 column is coming from, so worth adding a comment here (it is > the bytea column of the toasttest_oid8 table defined in > src/test/regress/sql/strings.sql). v18-0004 and v18-0015 are not there yet. -- Michael
signature.asc
Description: PGP signature
