Except it now doesn't apply as the async connection/rendering patch was in the queue right ahead of it :-(.
Can I get a rebased patch please? On Fri, Aug 23, 2019 at 11:57 AM Aditya Toshniwal < aditya.toshni...@enterprisedb.com> wrote: > Excellent !! Looks good to me. > > On Fri, Aug 23, 2019 at 2:23 PM Yosry Muhammad <yosry...@gmail.com> wrote: > >> I updated the patch for backwards compatibility anyway. >> >> On Fri, Aug 23, 2019 at 10:45 AM Dave Page <dp...@pgadmin.org> wrote: >> >>> >>> >>> On Fri, Aug 23, 2019 at 9:43 AM Yosry Muhammad <yosry...@gmail.com> >>> wrote: >>> >>>> Hi Aditya, >>>> >>>> On Fri, Aug 23, 2019 at 7:33 AM Aditya Toshniwal < >>>> aditya.toshni...@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 serializable >>>>> >>>> >>>> This 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. >>>>> [image: Screenshot 2019-08-23 at 10.53.30.png] >>>>> 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 Yosry* >>>> >>>> Computer Engineering student, >>>> The Faculty of Engineering, >>>> Cairo University (2021). >>>> Class representative of CMP 2021. >>>> https://www.linkedin.com/in/yosrym93/ >>>> >>> >>> >>> -- >>> Dave Page >>> Blog: http://pgsnake.blogspot.com >>> Twitter: @pgsnake >>> >>> EnterpriseDB UK: http://www.enterprisedb.com >>> The Enterprise PostgreSQL Company >>> >> >> >> -- >> *Yosry Muhammad Yosry* >> >> Computer Engineering student, >> The Faculty of Engineering, >> Cairo University (2021). >> Class representative of CMP 2021. >> https://www.linkedin.com/in/yosrym93/ >> > > > -- > Thanks and Regards, > Aditya Toshniwal > Software Engineer | EnterpriseDB India | Pune > "Don't Complain about Heat, Plant a TREE" > -- Dave Page Blog: http://pgsnake.blogspot.com Twitter: @pgsnake EnterpriseDB UK: http://www.enterprisedb.com The Enterprise PostgreSQL Company