Re: [pgAdmin4] PATCH: View and Role Node

From: Dave Page <dpage(at)pgadmin(dot)org>
To: Surinder Kumar <surinder(dot)kumar(at)enterprisedb(dot)com>
Cc: pgadmin-hackers <pgadmin-hackers(at)postgresql(dot)org>
Subject: Re: [pgAdmin4] PATCH: View and Role Node
Date: 2016-02-25 11:03:53
Message-ID: CA+OCxowWwR70-w=674UQXfZkAiCnmzdnqj7mCSwGFfT4DymWzw@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgadmin-hackers

Hi

On Wed, Feb 24, 2016 at 1:31 PM, Surinder Kumar <
surinder(dot)kumar(at)enterprisedb(dot)com> wrote:

> Hi,
>
> Please find the updated patch with following changes:
>
> 1. Integrated dependents and dependency tabs with view and rule node.
> 2. Added "Create Rule" option for Table node.
> 3. Added node_inode property for rule node as it has no child node.
> 4. Improved javascript code commenting and added pydoc in python files.
> 5. Name column under dependents tab showing wrong name for rule node
> due to typo mistake, It is fixed.
>
> Please review it and Let me know for any comments.
>

Please find an updated patch attached, in which I tweaked some comments and
fixed a few minor issues as I reviewed the code. The following issues need
to be addressed please, then I'll take another look:

- Don't show the definition SQL in the main properties tab.

- Check Options is missing from the properties tab.

- Views were made function in PostgreSQL v6.4! Why only load the module for
9.1+?

- The TRUNCATE ACL flag is not recognised, leading to ACLs being shown as:
arwdUNKNOWNxt

- 4 character indents are not applied consistently to SQL templates

- Why do servers pre-9.3 have VACUUM options in the SQL templates?

- There should be no special casing of Slony schemas (backend_support.sql)

- Don't include \'s on line ends of multiline comments or docstrings.

- I can't create a Materialised View

On the dialogs:

- The "Definition" input box should have a border.

- The "Definition" input box fill the vertical space assigned to it, such
that the border on the left runs top to bottom (see the main SQL tab).

- The "Definition" input box should be displayed below the label at all
times (unlike other controls), to maximise available space

- The SQL tab view is broken for views (tested on PG 9.4), likely due to
the TRUNCATE ACL issue:

2016-02-25 10:59:00,118: INFO werkzeug: 127.0.0.1 - - [25/Feb/2016
10:59:00] "GET /browser/view/sql/1/1/24587/27424/27555 HTTP/1.1" 500 -
Traceback (most recent call last):
File
"/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/flask/app.py",
line 1836, in __call__
return self.wsgi_app(environ, start_response)
File
"/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/flask/app.py",
line 1820, in wsgi_app
response = self.make_response(self.handle_exception(e))
File
"/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/flask/app.py",
line 1403, in handle_exception
reraise(exc_type, exc_value, tb)
File
"/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/flask/app.py",
line 1817, in wsgi_app
response = self.full_dispatch_request()
File
"/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/flask/app.py",
line 1477, in full_dispatch_request
rv = self.handle_user_exception(e)
File
"/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/flask/app.py",
line 1381, in handle_user_exception
reraise(exc_type, exc_value, tb)
File
"/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/flask/app.py",
line 1475, in full_dispatch_request
rv = self.dispatch_request()
File
"/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/flask/app.py",
line 1461, in dispatch_request
return self.view_functions[rule.endpoint](**req.view_args)
File
"/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/flask/views.py",
line 84, in view
return self.dispatch_request(*args, **kwargs)
File "/Users/dpage/git/pgadmin4/web/pgadmin/browser/utils.py", line 248,
in dispatch_request
return method(*args, **kwargs)
File
"/Users/dpage/git/pgadmin4/web/pgadmin/browser/server_groups/servers/databases/schemas/views/__init__.py",
line 242, in wrap
return f(*args, **kwargs)
File
"/Users/dpage/git/pgadmin4/web/pgadmin/browser/server_groups/servers/databases/schemas/views/__init__.py",
line 646, in sql
result['datacl'] = self.parse_privileges(result['datacl'])
File
"/Users/dpage/git/pgadmin4/web/pgadmin/browser/server_groups/servers/databases/schemas/views/__init__.py",
line 540, in parse_privileges
db_privileges[privilege['privilege_type']])
KeyError: 'UNKNOWN'

Thanks!

--
Dave Page
Blog: http://pgsnake.blogspot.com
Twitter: @pgsnake

EnterpriseDB UK: http://www.enterprisedb.com
The Enterprise PostgreSQL Company

In response to

Responses

Browse pgadmin-hackers by date

  From Date Subject
Next Message Dave Page 2016-02-25 11:14:48 pgAdmin 4 commit: Fix rule name generation
Previous Message Dave Page 2016-02-25 10:39:06 pgAdmin 4 commit: Fix typo