Re: [pgadmin-hackers] [pgAdmin4][runtime][patch]: RM#2398 - Proxy notbypassed for embedded server in runtime on Windows

Поиск
Список
Период
Сортировка
От Dave Page
Тема Re: [pgadmin-hackers] [pgAdmin4][runtime][patch]: RM#2398 - Proxy notbypassed for embedded server in runtime on Windows
Дата
Msg-id CA+OCxow92CNjTcPa0m54n9w4YALRfxnZHXSYkwVXYf=_r=rETQ@mail.gmail.com
обсуждение исходный текст
Ответ на Re: [pgadmin-hackers] [pgAdmin4][runtime][patch]: RM#2398 - Proxy notbypassed for embedded server in runtime on Windows  (Dave Page <dpage@pgadmin.org>)
Список pgadmin-hackers
I've applied the patch from Neel for this in
commit:6e24cb038a0498cf87219104368dfcea40630440 and put a test build
at https://developer.pgadmin.org/~dpage/pgadmin4-1.5-x86.exe. Please
test!

Thanks Neel!

On Wed, May 24, 2017 at 6:53 PM, Dave Page <dpage@pgadmin.org> wrote:
> Good catch - thanks Neel. I don't have my main dev laptop with me, so
> I'll have to test this next week. Watch this space :-)
>
> On Wed, May 24, 2017 at 4:22 AM, Neel Patel <neel.patel@enterprisedb.com> wrote:
>> Hi,
>>
>> After debugging the issue in windows, we came to know that "random port"
>> generation logic in runtime is getting failed if we configured proxy server
>> in windows.
>>
>> Below are the code where we are finding random free port and use with our
>> URL "localhost:<port>". Below code return "0" as port value so application
>> is not able to start and it hangs on splash screen. Here, if we configured
>> proxy server in windows then "bind" method always return false and gives
>> message "Operation not permitted" but when we disable proxy server then
>> below code gives valid random port number.
>>
>> QTcpSocket socket;
>> socket.bind(0, QTcpSocket::ShareAddress);
>> port = socket.localPort();
>>
>> Same happens with Linux OS - when user defined "http_proxy" environment
>> variable and run pgAdmin4 application then above code fails and gives "0" as
>> random port number and application hangs on splash screen.
>>
>>
>> From the below Qt 5.8 released link, we came to know that "random port"
>> generation work well after setting application level proxy.
>> http://blog.qt.io/blog/2017/01/23/qt-5-8-released/
>>
>> QNetworkProxy::setApplicationProxy(QNetworkProxy());
>>
>> After setting above, "bind" method return true and gives correct port number
>> and application starts working. We are also setting
>> "setUseSystemConfiguration=true" after setting application level proxy which
>> will override the setting and use platform specific system proxy
>> configuration.
>>
>> From the below link, it looks like fixed in Qt 5.9.
>> https://bugreports.qt.io/browse/QTBUG-58374
>> https://codereview.qt-project.org/#/c/186124/
>>
>> I have tested with Qt 5.8 Web Engine and webkit in windows. Do review it and
>> let me know for comments.
>>
>> Thanks,
>> Neel Patel
>>
>> On Fri, May 19, 2017 at 4:37 PM, Dave Page <dpage@pgadmin.org> wrote:
>>>
>>> On Thu, May 18, 2017 at 3:42 PM, Neel Patel <neel.patel@enterprisedb.com>
>>> wrote:
>>> > Hi Dave,
>>> >
>>> > Please find attached patch for the fix of RM#2398 - "Proxy not bypassed
>>> > for
>>> > embedded server in runtime on Windows".
>>> >
>>> > Observation:-
>>> > We have observed this issue only with Qt WebEngine. We have not observed
>>> > this issue with Webkit ( Tested with Qt 5.3 ).
>>> >
>>> > Issue:-
>>> > If user set option "Bypass proxy server for local addresses" then
>>> > WebEngine
>>> > doesn't bypass the request for local addresses even if that option is
>>> > set.
>>> >
>>> > Solution:-
>>> > Now if user set option "Bypass proxy server for local addresses" then
>>> > Web
>>> > Engine bypass the request for localhost and if user unset then request
>>> > will
>>> > not be bypassed.
>>> >
>>> > Please find attached fix for this issue. Do review and test it and let
>>> > me
>>> > know for any issue.
>>>
>>> Noted on the ticket:
>>>
>>> ====
>>> Right, but as Maxim has noted, the proxy code is there to allow users
>>> to browse to online docs, so it can't just be disabled.
>>>
>>> This likely worked in 1.3 as that used QtWebEngine (which had a bunch
>>> of other issues). We need to fix it for QtWebKit, so that it honors
>>> the bypass proxy for local addresses option.
>>> ====
>>>
>>>
>>> --
>>> Dave Page
>>> Blog: http://pgsnake.blogspot.com
>>> Twitter: @pgsnake
>>>
>>> EnterpriseDB UK: http://www.enterprisedb.com
>>> The Enterprise PostgreSQL Company
>>
>>
>
>
>
> --
> Dave Page
> Blog: http://pgsnake.blogspot.com
> Twitter: @pgsnake
>
> EnterpriseDB UK: http://www.enterprisedb.com
> The Enterprise PostgreSQL Company



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

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


В списке pgadmin-hackers по дате отправления:

Предыдущее
От: Dave Page
Дата:
Сообщение: Re: [pgadmin-hackers] [pgAdmin4] [PATCH] History Tab rewrite in React
Следующее
От: Dave Page
Дата:
Сообщение: [pgadmin-hackers] pgAdmin 4 commit: Avoid re-rendering the edit grid for every row thati