Skip site navigation (1) Skip section navigation (2)

Ownership of a new view

From: McAjvar <mcajvar(at)gmail(dot)com>
To: pgadmin-hackers(at)postgresql(dot)org
Subject: Ownership of a new view
Date: 2011-06-15 07:53:29
Message-ID: BANLkTi=1OpSfCr5EO0jmky1+EvPxOLq8uA@mail.gmail.com (view raw or flat)
Thread:
Lists: pgadmin-hackers
Hi!

When creating a new view I've ran across some puzzling behaviour. I made a
view as a superuser and assigned view ownership to another user who would be
using it. Afterwards I was puzzled when I tried to select data from it and
it wouldn't let me, saying the user does not have permission to do so. The
view properties showed that indeed the superuser was the view owner instead
of the user I chose.

This happened with pgAdmin 1.10.2, 1.14.0 Beta 1 on Windows and I've built
pgAdmin from source from a fresh checkout on Linux and observed the same.

Upon checking I found out that when I was creating a new view that the
group/role list does not have an empty row like other dialogs do (like,
creating a new table, sequence, ...). So when I chose the first user (index
0) from the list, the generated SQL didn't reflect the change of user
ownership, choosing any other user (index > 0) added the expected ALTER ...
OWNER TO ... query.

This change fixed my problem and brought the combo box in line with those in
other dialogs:

diff --git a/pgadmin/dlg/dlgView.cpp b/pgadmin/dlg/dlgView.cpp
index cd82bca..78f1f5d 100644
--- a/pgadmin/dlg/dlgView.cpp
+++ b/pgadmin/dlg/dlgView.cpp
@@ -57,6 +57,8 @@ pgObject *dlgView::GetObject()

 int dlgView::Go(bool modal)
 {
+       if (!view)
+               cbOwner->Append(wxEmptyString);
        AddGroups(cbOwner);
        AddUsers(cbOwner);


Regards,
Miha Radej

Responses

pgadmin-hackers by date

Next:From: Jasmin DizdarevicDate: 2011-06-15 08:00:37
Subject: Re: Branch 1.14?
Previous:From: Guillaume LelargeDate: 2011-06-15 07:33:16
Subject: Re: Branch 1.14?

Privacy Policy | About PostgreSQL
Copyright © 1996-2014 The PostgreSQL Global Development Group