Re: [pgadmin-hackers] Re: Server side cursor limitations for ondemand loading of data in query tool [RM2137] [pgAdmin4] - Mailing list pgadmin-hackers
From | Dave Page |
---|---|
Subject | Re: [pgadmin-hackers] Re: Server side cursor limitations for ondemand loading of data in query tool [RM2137] [pgAdmin4] |
Date | |
Msg-id | CA+OCxox=8+nnQOAARWVRaxvBYBAG1sFyV1fWT-whPhdqVoJMmQ@mail.gmail.com Whole thread Raw |
In response to | Re: [pgadmin-hackers] Re: Server side cursor limitations for ondemand loading of data in query tool [RM2137] [pgAdmin4] (Harshal Dhumal <harshal.dhumal@enterprisedb.com>) |
Responses |
Re: [pgadmin-hackers] Re: Server side cursor limitations for ondemand loading of data in query tool [RM2137] [pgAdmin4]
|
List | pgadmin-hackers |
Sounds good, thanks. On Thu, Jun 15, 2017 at 9:54 PM, Harshal Dhumal <harshal.dhumal@enterprisedb.com> wrote: > Hi > > On Fri, Jun 16, 2017 at 2:07 AM, Dave Page <dpage@pgadmin.org> wrote: >> >> 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. > > > OK. In that case let's try putting 1-2 second delay and observer behaviour. > I'll send separate patch for this tomorrow as this is not related to on > demand query result feature or its test cases. > >> >> >> >> >> >> >> >> ====================================================================== >> >> 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 > > -- Dave Page Blog: http://pgsnake.blogspot.com Twitter: @pgsnake EnterpriseDB UK: http://www.enterprisedb.com The Enterprise PostgreSQL Company
pgadmin-hackers by date: