On Wed, Mar 8, 2017 at 12:45 AM, Fujii Masao <masao.fujii@gmail.com> wrote:
> Hi,
>
> When I logged in PostgreSQL as non-superuser and ran
> ALTER PUBLICATION command, I got a segmentation fault.
> The code checking the owner of publication might have a bug.
>
> =# CREATE ROLE foo NOSUPERUSER LOGIN
> =# \c - foo
> => \dRp
> List of publications
> Name | Owner | Inserts | Updates | Deletes
> -------+----------+---------+---------+---------
> mypub | postgres | t | t | t
> => ALTER PUBLICATION mypub RENAME TO hoge;
>
> LOG: server process (PID 80356) was terminated by signal 11: Segmentation fault
> DETAIL: Failed process was running: ALTER PUBLICATION mypub RENAME TO hoge;
>
This issue happen even ALTER SUBSCRIPTION. I guess the main cause is
that acl_kind of pg_publication and pg_subscription of ObjectProperty
array are not correct. These values should be set ACL_KIND_PUBLICATION
and ACL_KIND_SUBSCRIPTION instead of -1. Attached small patch fixes
this issue and adds regression test.
Regards,
--
Masahiko Sawada
NIPPON TELEGRAPH AND TELEPHONE CORPORATION
NTT Open Source Software Center
--
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers