Re: BUG #16045: vacuum_db crash and illegal memory alloc afterpg_upgrade from PG11 to PG12
От | Tomas Vondra |
---|---|
Тема | Re: BUG #16045: vacuum_db crash and illegal memory alloc afterpg_upgrade from PG11 to PG12 |
Дата | |
Msg-id | 20191013203848.2eksimmpux3546wr@development обсуждение исходный текст |
Ответ на | Re: BUG #16045: vacuum_db crash and illegal memory alloc after pg_upgrade from PG11 to PG12 (Tom Lane <tgl@sss.pgh.pa.us>) |
Список | pgsql-bugs |
On Sun, Oct 13, 2019 at 02:26:48PM -0400, Tom Lane wrote: >Tomas Vondra <tomas.vondra@2ndquadrant.com> writes: >> here is an updated patch, with the recursive CTE. I've done a fair >> amount of testing on it on older versions (up to 9.4), and it seems to >> work just fine. > >Might be a good idea to exclude attisdropped columns in the part of the >recursive query that's looking for sql_identifier columns of composite >types. I'm not sure if composites can have dropped columns today, >but even if they can't it seems like a wise bit of future-proofing. >(We'll no doubt have occasion to use this logic again...) > Hmm? How could that be safe? Let's say we have a composite type with a sql_identifier column, it's used in a table with data, and we drop the column. We need the pg_type information to parse the existing, so how could we skip attisdropped columns? >Looks good other than that nit. > >> BTW the query (including the RELKIND_COMPSITE_TYPE) was essentially just >> a lightly-massaged copy of old_9_6_check_for_unknown_data_type_usage, so >> that seems wrong too. > >Yeah, we should back-port this logic into that check too, IMO. > You mean the recursive CTE, removal of RELKIND_COMPOSITE_TYPE or the proposed change w.r.t. dropped columns? regards -- Tomas Vondra http://www.2ndQuadrant.com PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services
В списке pgsql-bugs по дате отправления: