Re: BUG #19483: pg_upgrade fails with orphan records in pg_init_priv catalog table
От
Hüseyin Demir
Тема
Re: BUG #19483: pg_upgrade fails with orphan records in pg_init_priv catalog table
Дата
Msg-id
CAB5wL7ZuFwu2Sd-xmn-w5-BbrKk_Mu_1ubYow_qaqFGhJOiMXw@mail.gmail.com
Ответ на
Список
Дерево обсуждения
Improve CREATE/ALTER PUBLICATION syntax for EXCEPT Fujii Masao <masao.fujii@gmail.com>
Re: Improve CREATE/ALTER PUBLICATION syntax for EXCEPT Peter Smith <smithpb2250@gmail.com>
Hi, > Further testing shows that changing this query isn't enough. > There are three more places where pg_dump queries pg_init_privs > (in getAggregates, getFuncs and dumpTable). > > So we'd have to use a similarly ugly query in all these places, > which doesn't seem particularly attractive and introduces > considerable code duplication. > > One approach I can think of is to have a macro SAFE_INITPRIVS > that contains the ugly subquery and is used in all these places. > > The other idea is to do some post-processing of the aclitems > found, but they are in string form and would need to get parsed > again, which doesn't look attractive either. Thanks for the feedback. I created a simple v4 patch to cover your feedback v4 applies the filter at all four sites where pg_dump queries pg_init_privs: - getAggregates() — WHERE clause comparison - getFuncs() — WHERE clause comparison - getAdditionalACLs() — SELECT expression (object-level initprivs) - PREPQUERY_GETCOLUMNACLS — SELECT expression (column-level initprivs, objsubid != 0) Secondly to avoid duplicating the multi-line subquery at every call site, I introduced a SAFE_INITPRIVS(col) macro. I tried to add more clean and detailed comments for future commits but please let me know if you have additional feedback on it. Regards, Demir.
В списке pgsql-bugs по дате отправления
От: PG Bug reporting form
Дата:
От: Hüseyin Demir
Дата: