> Subject: [PATCH v28 3/4] Add default_toast_compression GUC

This part isn't working.  My first patch worked somewhat better: due to doing
strcmp() with the default GUC, it avoided using the cached AM OID.  (But it
would've failed with more than 2 AMs, since the cache wasn't invalidated, since
I couldn't tell when it was needed).

Your patch does this:

|postgres=# SET default_toast_compression=lz4 ;
|postgres=# CREATE TABLE t(a text);
|postgres=# \d+ t
| a      | text |           |          |         | extended | pglz        |     
         | 

assign_default_toast_compression() should set
default_toast_compression_oid=InvalidOid, rather than
default_toast_compression=NULL.

In my original patch, that was commented, since I was confused, not realizing
that the GUC machinery itself assigns to the string value.  We should assign to
the cached Oid, instead.

Reading my own patch, I see that in AccessMethodCallback() should also say
InvalidOid.
| default_toast_compression_oid = false;
The false assignment was copied from namespace.c: baseSearchPathValid.

-- 
Justin


Reply via email to