Re: [pgadmin-hackers] Re: Server side cursor limitations for ondemand loading of data in query tool [RM2137] [pgAdmin4] - Mailing list pgadmin-hackers
From | Harshal Dhumal |
---|---|
Subject | Re: [pgadmin-hackers] Re: Server side cursor limitations for ondemand loading of data in query tool [RM2137] [pgAdmin4] |
Date | |
Msg-id | CAFiP3vzQQ8MxzSGuYcOPR9cDRRdz06LuLuGKo3cnTWXNcgFrew@mail.gmail.com Whole thread Raw |
In response to | Re: [pgadmin-hackers] Re: Server side cursor limitations for on demand loading of data in query tool [RM2137] [pgAdmin4] (Dave Page <dpage@pgadmin.org>) |
Responses |
Re: [pgadmin-hackers] Re: Server side cursor limitations for ondemand loading of data in query tool [RM2137] [pgAdmin4]
|
List | pgadmin-hackers |
Hi Dave,
Please find attached updated patch.
On Thu, Jun 15, 2017 at 3:58 PM, Dave Page <dpage@pgadmin.org> wrote:
HiOn 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 (0be2cd95f834e9ee7c46bcc7cf405b 483f5ae83b),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.
and============================================================ ========== 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 (0be2cd95f834e9ee7c46bcc7cf405b 483f5ae83b),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 PageBlog: http://pgsnake.blogspot.com
Twitter: @pgsnake
EnterpriseDB UK: http://www.enterprisedb.com
The Enterprise PostgreSQL Company
Attachment
pgadmin-hackers by date: