Re: [pgAdmin4][Patch]: RM #3551 pgAdmin4 doesn't handle \'s in data fields correctly

From: Akshay Joshi <akshay(dot)joshi(at)enterprisedb(dot)com>
To: Dave Page <dpage(at)pgadmin(dot)org>
Cc: pgadmin-hackers <pgadmin-hackers(at)postgresql(dot)org>
Subject: Re: [pgAdmin4][Patch]: RM #3551 pgAdmin4 doesn't handle \'s in data fields correctly
Date: 2018-09-20 14:45:37
Message-ID: CANxoLDcTnSNzsDx072efMgCjxdu4tCEZ5hwRUf5cEZB1U23hpg@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgadmin-hackers

Hi Hackers,

Attached is the modified patch with regression tests.

On Wed, Sep 19, 2018 at 11:32 AM, Akshay Joshi <
akshay(dot)joshi(at)enterprisedb(dot)com> wrote:

> Hi Dave
>
> On Fri, Sep 14, 2018 at 8:02 PM, Dave Page <dpage(at)pgadmin(dot)org> wrote:
>
>> Hi
>>
>> On Fri, Sep 14, 2018 at 12:48 PM, Akshay Joshi <
>> akshay(dot)joshi(at)enterprisedb(dot)com> wrote:
>>
>>> Hi Hackers,
>>>
>>> Attached is the patch to fix RM #3551 pgAdmin4 doesn't handle \'s in
>>> data fields correctly.
>>>
>>
>> This doesn't work for me. If I add a new row and enter:
>>
>> \\server\path\to\file
>>
>> as a value, I get the following on the Messages tab:
>>
>
> This works fine for me, I have enter the same value and data is
> stored. I have tested it with character varying column. Though I have found
> some other issues as well. If I fix one issue then another will get
> introduce, so not concluded yet how to fix this and currently working on
> it.
>
>>
>> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN"> <title>500
>> Internal Server Error</title> <h1>Internal Server Error</h1> <p>The server
>> encountered an internal error and was unable to complete your request.
>> Either the server is overloaded or there is an error in the application.</p>
>>
>> And this on the Python (3.6) console:
>>
>> 2018-09-14 15:30:28,516: INFO werkzeug: 127.0.0.1 - - [14/Sep/2018
>> 15:30:28] "POST /sqleditor/save/4073406 HTTP/1.1" 500 -
>> 2018-09-14 15:30:28,522: ERROR werkzeug: Error on request:
>> Traceback (most recent call last):
>> File "/Users/dpage/.virtualenvs/pgadmin4/lib/python3.6/site-packages/werkzeug/serving.py",
>> line 270, in run_wsgi
>> execute(self.server.app)
>> File "/Users/dpage/.virtualenvs/pgadmin4/lib/python3.6/site-packages/werkzeug/serving.py",
>> line 258, in execute
>> application_iter = app(environ, start_response)
>> File "/Users/dpage/.virtualenvs/pgadmin4/lib/python3.6/site-packages/flask/app.py",
>> line 1997, in __call__
>> return self.wsgi_app(environ, start_response)
>> File "/Users/dpage/.virtualenvs/pgadmin4/lib/python3.6/site-packages/flask/app.py",
>> line 1985, in wsgi_app
>> response = self.handle_exception(e)
>> File "/Users/dpage/.virtualenvs/pgadmin4/lib/python3.6/site-packages/flask/app.py",
>> line 1540, in handle_exception
>> reraise(exc_type, exc_value, tb)
>> File "/Users/dpage/.virtualenvs/pgadmin4/lib/python3.6/site-packages/flask/_compat.py",
>> line 33, in reraise
>> raise value
>> File "/Users/dpage/.virtualenvs/pgadmin4/lib/python3.6/site-packages/flask/app.py",
>> line 1982, in wsgi_app
>> response = self.full_dispatch_request()
>> File "/Users/dpage/.virtualenvs/pgadmin4/lib/python3.6/site-packages/flask/app.py",
>> line 1614, in full_dispatch_request
>> rv = self.handle_user_exception(e)
>> File "/Users/dpage/.virtualenvs/pgadmin4/lib/python3.6/site-packages/flask/app.py",
>> line 1517, in handle_user_exception
>> reraise(exc_type, exc_value, tb)
>> File "/Users/dpage/.virtualenvs/pgadmin4/lib/python3.6/site-packages/flask/_compat.py",
>> line 33, in reraise
>> raise value
>> File "/Users/dpage/.virtualenvs/pgadmin4/lib/python3.6/site-packages/flask/app.py",
>> line 1612, in full_dispatch_request
>> rv = self.dispatch_request()
>> File "/Users/dpage/.virtualenvs/pgadmin4/lib/python3.6/site-packages/flask/app.py",
>> line 1598, in dispatch_request
>> return self.view_functions[rule.endpoint](**req.view_args)
>> File "/Users/dpage/.virtualenvs/pgadmin4/lib/python3.6/site-packages/flask_login.py",
>> line 792, in decorated_view
>> return func(*args, **kwargs)
>> File "/Users/dpage/git/pgadmin4/web/pgadmin/tools/sqleditor/__init__.py",
>> line 785, in save
>> default_conn)
>> File "/Users/dpage/git/pgadmin4/web/pgadmin/tools/sqleditor/command.py",
>> line 858, in save
>> item['select_sql'], res['rows'][0])
>> File "/Users/dpage/git/pgadmin4/web/pgadmin/utils/driver/psycopg2/connection.py",
>> line 1147, in execute_dict
>> self.__internal_blocking_execute(cur, query, params)
>> File "/Users/dpage/git/pgadmin4/web/pgadmin/utils/driver/psycopg2/connection.py",
>> line 659, in __internal_blocking_execute
>> params = self.escape_params_sqlascii(params)
>> File "/Users/dpage/git/pgadmin4/web/pgadmin/utils/driver/psycopg2/connection.py",
>> line 636, in escape_params_sqlascii
>> for key, val in params.items()
>> File "/Users/dpage/git/pgadmin4/web/pgadmin/utils/driver/psycopg2/connection.py",
>> line 636, in <genexpr>
>> for key, val in params.items()
>> AttributeError: 'int' object has no attribute 'encode'
>>
>> --
>> Dave Page
>> Blog: http://pgsnake.blogspot.com
>> Twitter: @pgsnake
>>
>> EnterpriseDB UK: http://www.enterprisedb.com
>> The Enterprise PostgreSQL Company
>>
>
>
>
> --
> *Akshay Joshi*
>
> *Sr. Software Architect *
>
>
>
> *Phone: +91 20-3058-9517Mobile: +91 976-788-8246*
>

--
*Akshay Joshi*

*Sr. Software Architect *

*Phone: +91 20-3058-9517Mobile: +91 976-788-8246*

Attachment Content-Type Size
RM_3551_v2.patch application/octet-stream 7.0 KB

In response to

Responses

Browse pgadmin-hackers by date

  From Date Subject
Next Message Harshal Dhumal 2018-09-20 15:08:10 Re: [pgAdmin4][Patch]: RM #3551 pgAdmin4 doesn't handle \'s in data fields correctly
Previous Message pgAdmin 4 Jenkins 2018-09-19 16:03:40 Build failed in Jenkins: pgadmin4-master-python33 #762