Re: [pgadmin-hackers] Re: Server side cursor limitations for ondemand loading of data in query tool [RM2137] [pgAdmin4]

Поиск
Список
Период
Сортировка
От Dave Page
Тема Re: [pgadmin-hackers] Re: Server side cursor limitations for ondemand loading of data in query tool [RM2137] [pgAdmin4]
Дата
Msg-id CA+OCxoy=+A0xE2gaFTH0VkAF-f4dpkW4nvF8sLd7Guag3czorA@mail.gmail.com
обсуждение исходный текст
Ответ на Re: [pgadmin-hackers] Re: Server side cursor limitations for ondemand loading of data in query tool [RM2137] [pgAdmin4]  (Harshal Dhumal <harshal.dhumal@enterprisedb.com>)
Ответы Re: [pgadmin-hackers] Re: Server side cursor limitations for ondemand loading of data in query tool [RM2137] [pgAdmin4]  (Harshal Dhumal <harshal.dhumal@enterprisedb.com>)
Список pgadmin-hackers
Hi

On Thu, Jun 15, 2017 at 9:30 PM, Harshal Dhumal
<harshal.dhumal@enterprisedb.com> wrote:
> Hi Dave,
>
> Please find attached updated patch.
>
> On Thu, Jun 15, 2017 at 3:58 PM, Dave Page <dpage@pgadmin.org> wrote:
>>
>> Hi
>>
>> On Wed, Jun 14, 2017 at 11:36 PM, Harshal Dhumal
>> <harshal.dhumal@enterprisedb.com> wrote:
>>>
>>> Hi Dave,
>>>
>>> Please find rebased patch for RM2137.
>>
>>
>> Looking very good. The only issues I see are:
>>
>> - The row headers should auto-size such that they can display the row
>> numbers if the last row was displayed. E.g. if there are 12345 rows in
>> total, then the row header should be sized to display 5 digits.
>>
> Fixed.
>
>
>>
>> - The tests are comprehensive, which is awesome. However, every time I ran
>> them, at least one of the feature tests failed. Unfortunately, it was a
>> different one each time. In the last two runs, I got:
>>
>>  ======================================================================
>> ERROR: runTest
>> (pgadmin.feature_tests.query_tool_tests.QueryToolFeatureTest)
>> Query tool feature test
>> ----------------------------------------------------------------------
>> Traceback (most recent call last):
>>   File
>> "/Users/dpage/git/pgadmin4/web/regression/feature_utils/base_feature_test.py",
>> line 40, in setUp
>>     self.before()
>>   File
>> "/Users/dpage/git/pgadmin4/web/pgadmin/feature_tests/query_tool_tests.py",
>> line 40, in before
>>     self._connects_to_server()
>>   File
>> "/Users/dpage/git/pgadmin4/web/pgadmin/feature_tests/query_tool_tests.py",
>> line 144, in _connects_to_server
>>     self.page.driver.find_element_by_link_text("Create"))\
>>   File
>> "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/selenium/webdriver/remote/webdriver.py",
>> line 319, in find_element_by_link_text
>>     return self.find_element(by=By.LINK_TEXT, value=link_text)
>>   File
>> "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/selenium/webdriver/remote/webdriver.py",
>> line 756, in find_element
>>     'value': value})['value']
>>   File
>> "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/selenium/webdriver/remote/webdriver.py",
>> line 238, in execute
>>     self.error_handler.check_response(response)
>>   File
>> "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/selenium/webdriver/remote/errorhandler.py",
>> line 193, in check_response
>>     raise exception_class(message, screen, stacktrace)
>> NoSuchElementException: Message: no such element: Unable to locate
>> element: {"method":"link text","selector":"Create"}
>>   (Session info: chrome=58.0.3029.110)
>>   (Driver info: chromedriver=2.29.461585
>> (0be2cd95f834e9ee7c46bcc7cf405b483f5ae83b),platform=Mac OS X 10.12.3 x86_64)
>>
> I checked code from _connects_to_server function which is common in all
> features test cases. I didn't find anything wrong with this. If there is a
> bug in this function then all feature test must fail.
> Let me know if you are getting failure consistently in _connects_to_server
> function.

I wondered if that one is a race condition. Do we need a short delay
before clicking the Object menu? I have seen this occasionally before.

>>
>>
>> ======================================================================
>> ERROR: runTest
>> (pgadmin.feature_tests.query_tool_tests.QueryToolFeatureTest)
>> Query tool feature test
>> ----------------------------------------------------------------------
>> Traceback (most recent call last):
>>   File
>> "/Users/dpage/git/pgadmin4/web/pgadmin/feature_tests/query_tool_tests.py",
>> line 119, in runTest
>>     self._query_tool_auto_rollback_enabled()
>>   File
>> "/Users/dpage/git/pgadmin4/web/pgadmin/feature_tests/query_tool_tests.py",
>> line 697, in _query_tool_auto_rollback_enabled
>>     '//div[contains(@class, "sql-editor-message") and contains(string(),
>> "COMMIT")]'
>>   File
>> "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/selenium/webdriver/remote/webdriver.py",
>> line 295, in find_element_by_xpath
>>     return self.find_element(by=By.XPATH, value=xpath)
>>   File
>> "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/selenium/webdriver/remote/webdriver.py",
>> line 756, in find_element
>>     'value': value})['value']
>>   File
>> "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/selenium/webdriver/remote/webdriver.py",
>> line 238, in execute
>>     self.error_handler.check_response(response)
>>   File
>> "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/selenium/webdriver/remote/errorhandler.py",
>> line 193, in check_response
>>     raise exception_class(message, screen, stacktrace)
>> NoSuchElementException: Message: no such element: Unable to locate
>> element: {"method":"xpath","selector":"//div[contains(@class,
>> "sql-editor-message") and contains(string(), "COMMIT")]"}
>>   (Session info: chrome=58.0.3029.110)
>>   (Driver info: chromedriver=2.29.461585
>> (0be2cd95f834e9ee7c46bcc7cf405b483f5ae83b),platform=Mac OS X 10.12.3 x86_64)
>>
> I have updated Auto rollback enabled test in this patch.
>
>>
>> Relevant screenshots attached.
>>
>> - Can you tidy up the regression output a little please? Instead of:
>>
>> -------
>> runTest (pgadmin.feature_tests.query_tool_tests.QueryToolFeatureTest)
>> Query tool feature test ... On demand result set on scrolling...
>> OK.
>>
>> On demand result set on grid select all...
>> OK.
>>
>> On demand result set on column select all...
>> OK.
>>
>> Explain query...
>> OK.
>>
>> Explain query with verbose...
>> OK.
>>
>> Explain query with costs...
>> OK.
>>
>> Explain analyze query...
>> OK.
>>
>> Explain analyze query with buffers...
>> OK.
>>
>> Explain analyze query with timing...
>> OK.
>>
>> Auto commit disabled...
>> OK.
>>
>> Auto commit enabled...
>> OK.
>>
>> Auto rollback enabled...
>> ERROR
>> -------
>>
>> Something like:
>>
>> -------
>> runTest (pgadmin.feature_tests.query_tool_tests.QueryToolFeatureTest)
>> Query tool feature test ...
>> On demand result set on scrolling... OK.
>> On demand result set on grid select all... OK.
>> On demand result set on column select all... OK.
>> Explain query... OK.
>> Explain query with verbose... OK.
>> Explain query with costs... OK.
>> Explain analyze query... OK.
>> Explain analyze query with buffers... OK.
>> Explain analyze query with timing... OK.
>> Auto commit disabled... OK.
>> Auto commit enabled... OK.
>> Auto rollback enabled... ERROR
>> --------
>>
> Fixed.
>
>
>>
>> Thanks!
>>
>> --
>> 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 по дате отправления:

Предыдущее
От: Harshal Dhumal
Дата:
Сообщение: Re: [pgadmin-hackers] Re: Server side cursor limitations for ondemand loading of data in query tool [RM2137] [pgAdmin4]
Следующее
От: Harshal Dhumal
Дата:
Сообщение: Re: [pgadmin-hackers] Re: Server side cursor limitations for ondemand loading of data in query tool [RM2137] [pgAdmin4]