On 3/20/21 4:21 PM, Justin Pryzby wrote:
> On Sat, Mar 20, 2021 at 04:13:47PM +0100, Tomas Vondra wrote:
>> +++ b/src/backend/access/brin/brin_tuple.c
>> @@ -213,10 +213,20 @@ brin_form_tuple(BrinDesc *brdesc, BlockNumber blkno, BrinMemTuple *tuple,
>> (atttype->typstorage == TYPSTORAGE_EXTENDED ||
>> atttype->typstorage == TYPSTORAGE_MAIN))
>> {
>> + Datum cvalue;
>> + char compression = GetDefaultToastCompression();
>> Form_pg_attribute att = TupleDescAttr(brdesc->bd_tupdesc,
>> keyno);
>> - Datum cvalue = toast_compress_datum(value,
>> - att->attcompression);
>> +
>> + /*
>> + * If the BRIN summary and indexed attribute use the same data
>> + * type, we can the same compression method. Otherwise we have
>
> can *use ?
>
>> + * to use the default method.
>> + */
>> + if (att->atttypid == atttype->type_id)
>> + compression = att->attcompression;
>
> It would be more obvious to me if this said here:
> | else: compression = GetDefaultToastCompression
>
Thanks. I've pushed a patch tweaked per your feedback.
regards
--
Tomas Vondra
EnterpriseDB: http://www.enterprisedb.com
The Enterprise PostgreSQL Company