Re: [GSoC][New Feature] Editable and Read-only Columns - Mailing list pgadmin-hackers
From | Aditya Toshniwal |
---|---|
Subject | Re: [GSoC][New Feature] Editable and Read-only Columns |
Date | |
Msg-id | CAM9w-_==7a4ASheSuFdMXM1mf5Nw897uDhuJeN6KPOYmYY7+_g@mail.gmail.com Whole thread Raw |
In response to | Re: [GSoC][New Feature] Editable and Read-only Columns (Yosry Muhammad <yosrym93@gmail.com>) |
Responses |
Re: [GSoC][New Feature] Editable and Read-only Columns
|
List | pgadmin-hackers |
Excellent !! Looks good to me.
On Fri, Aug 23, 2019 at 2:23 PM Yosry Muhammad <yosrym93@gmail.com> wrote:
I updated the patch for backwards compatibility anyway.On Fri, Aug 23, 2019 at 10:45 AM Dave Page <dpage@pgadmin.org> wrote:On Fri, Aug 23, 2019 at 9:43 AM Yosry Muhammad <yosrym93@gmail.com> wrote:Hi Aditya,On Fri, Aug 23, 2019 at 7:33 AM Aditya Toshniwal <aditya.toshniwal@enterprisedb.com> wrote:Hi Yosry,The previously mentioned issues seems to be fixed. Below are few issues:1) On Python 2.7, I get below error when opening query tool:2019-08-23 10:49:09,329: ERROR flask.app: Object of type buffer is not JSON serializable
Traceback (most recent call last):
File "/Users/adityatoshniwal/venv/pypg27/lib/python2.7/site-packages/flask/app.py", line 1813, in full_dispatch_request
rv = self.dispatch_request()
File "/Users/adityatoshniwal/venv/pypg27/lib/python2.7/site-packages/flask/app.py", line 1799, in dispatch_request
return self.view_functions[rule.endpoint](**req.view_args)
File "/Users/adityatoshniwal/venv/pypg27/lib/python2.7/site-packages/flask_login/utils.py", line 261, in decorated_view
return func(*args, **kwargs)
File "/Users/adityatoshniwal/projects/pgadmin4/web/pgadmin/tools/sqleditor/__init__.py", line 1544, in get_query_history
return QueryHistory.get(current_user.id, trans_obj.sid, conn.db)
File "/Users/adityatoshniwal/projects/pgadmin4/web/pgadmin/tools/sqleditor/utils/query_history.py", line 21, in get
'result': [rec.query_info for rec in result]
File "/Users/adityatoshniwal/projects/pgadmin4/web/pgadmin/utils/ajax.py", line 75, in make_json_response
separators=(',', ':'), encoding=encoding),
File "/Users/adityatoshniwal/venv/pypg27/lib/python2.7/site-packages/simplejson/__init__.py", line 399, in dumps
**kw).encode(obj)
File "/Users/adityatoshniwal/venv/pypg27/lib/python2.7/site-packages/simplejson/encoder.py", line 296, in encode
chunks = self.iterencode(o, _one_shot=True)
File "/Users/adityatoshniwal/venv/pypg27/lib/python2.7/site-packages/simplejson/encoder.py", line 378, in iterencode
return _iterencode(o, 0)
File "/Users/adityatoshniwal/projects/pgadmin4/web/pgadmin/utils/ajax.py", line 30, in default
return json.JSONEncoder.default(self, obj)
File "/Users/adityatoshniwal/venv/pypg27/lib/python2.7/site-packages/simplejson/encoder.py", line 273, in default
o.__class__.__name__)
TypeError: Object of type buffer is not JSON serializableThis error exists on the master branch on Python 2.7, it is not caused by the patch. It is also not a regression of my previous Query History Enhancement patch, I checked.2) The patch is not compatible with older pyscopg2 (2.7.7). I get below error in View/Edit data.2019-08-23 10:53:12,020: ERROR flask.app: 'table_column'
Traceback (most recent call last):
File "/Users/adityatoshniwal/venv/pypg35/lib/python3.5/site-packages/flask/app.py", line 1813, in full_dispatch_request
rv = self.dispatch_request()
File "/Users/adityatoshniwal/venv/pypg35/lib/python3.5/site-packages/flask/app.py", line 1799, in dispatch_request
return self.view_functions[rule.endpoint](**req.view_args)
File "/Users/adityatoshniwal/venv/pypg35/lib/python3.5/site-packages/flask_login/utils.py", line 261, in decorated_view
return func(*args, **kwargs)
File "/Users/adityatoshniwal/projects/pgadmin4/web/pgadmin/tools/sqleditor/__init__.py", line 435, in poll
columns = trans_obj.get_columns_types(conn)
File "/Users/adityatoshniwal/projects/pgadmin4/web/pgadmin/tools/sqleditor/command.py", line 688, in get_columns_types
table_oid=table_oid)
File "/Users/adityatoshniwal/projects/pgadmin4/web/pgadmin/tools/sqleditor/utils/get_column_types.py", line 38, in get_columns_types
if row['oid'] == col['table_column']:
KeyError: 'table_column'I recall Dave mentioning that it is okay to use psycopg 2.8+ features and that it was a requirement of pgAdmin 4 now (clearly mentioned in requirements.txt too).I did - then we had the whole table_oid issue on Debian/Ubuntu :-(However, I updated the patch for backwards compatibility. Please find an updated patch attached.
--Yosry Muhammad YosryComputer Engineering student,The Faculty of Engineering,Cairo University (2021).Class representative of CMP 2021.--Dave Page
Blog: http://pgsnake.blogspot.com
Twitter: @pgsnake
EnterpriseDB UK: http://www.enterprisedb.com
The Enterprise PostgreSQL Company
--Yosry Muhammad YosryComputer Engineering student,The Faculty of Engineering,Cairo University (2021).Class representative of CMP 2021.
Thanks and Regards,
Aditya Toshniwal
Software Engineer | EnterpriseDB India | Pune
"Don't Complain about Heat, Plant a TREE"
Attachment
pgadmin-hackers by date: