On Thu, Mar 29, 2018 at 10:19 AM, Tom Lane <t...@sss.pgh.pa.us> wrote: > Andrew Dunstan <andrew.duns...@2ndquadrant.com> writes: >> On Wed, Mar 28, 2018 at 5:30 PM, Andres Freund <and...@anarazel.de> wrote: >>> + /* >>> + * Missing value for added columns. This is a one element array >>> which lets >>> + * us store a value of the attribute type here. >>> + */ >>> + anyarray attmissingval BKI_DEFAULT(_null_); >>> #endif >>> } FormData_pg_attribute; >>> >>> Still think this is a bad location, and it'll reduce cache hit ratio for >>> catalog lookups. > >> As I think I mentioned before, this was discussed previously and as I >> understood it this was the consensus location for it. > > I don't have a problem with putting that in pg_attribute (and I certainly > agree with not putting it in pg_attrdef). But "anyarray" seems like a > damn strange, and bulky, choice. Why not just make it a bytea holding the > bits for the value, nothing more? >
That's what we started with and Andres suggested we change it. One virtue of the array is that is displays nicely when examining pg_attribute. But changing it back would be easy enough. cheers andrew -- Andrew Dunstan https://www.2ndQuadrant.com PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services