| From: | Masahiko Sawada <sawada(dot)mshk(at)gmail(dot)com> | 
|---|---|
| To: | Fujii Masao <masao(dot)fujii(at)gmail(dot)com> | 
| Cc: | PostgreSQL-development <pgsql-hackers(at)postgresql(dot)org> | 
| Subject: | Re: ALTER PUBLICATION and segmentation fault | 
| Date: | 2017-03-07 16:56:27 | 
| Message-ID: | CAD21AoD0NEaVXDZ0P_0_J42aX2-TGqZTBZQfD37ird8tZKE1xA@mail.gmail.com | 
| Views: | Whole Thread | Raw Message | Download mbox | Resend email | 
| Thread: | |
| Lists: | pgsql-hackers | 
On Wed, Mar 8, 2017 at 12:45 AM, Fujii Masao <masao(dot)fujii(at)gmail(dot)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
| Attachment | Content-Type | Size | 
|---|---|---|
| fix_alter_pub_sub_rename.patch | application/octet-stream | 4.4 KB | 
| From | Date | Subject | |
|---|---|---|---|
| Next Message | Robert Haas | 2017-03-07 16:58:00 | Re: Proposal : Parallel Merge Join | 
| Previous Message | Daniel Verite | 2017-03-07 16:52:35 | Re: PATCH: Batch/pipelining support for libpq |