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+OCxowbL8ERrRcpcXj6TkcXRNDoZukZfKp4AraPBzBW9=j_xg@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] (Joao Pedro De Almeida Pereira <jdealmeidapereira@pivotal.io>) |
Responses |
Re: [pgadmin-hackers] Re: Server side cursor limitations for on demand loading of data in query tool [RM2137] [pgAdmin4]
|
List | pgadmin-hackers |
Harshal, can you look at these comments please, and patch as appropriate?
On Tue, Jun 27, 2017 at 5:03 PM, Joao Pedro De Almeida Pereira <jdealmeidapereira@pivotal.io> wrote:
Hello Hackers,When we started the app we noticed some change in the front end.The line numbers in the Editor:- We noticed a bug with the numbers where at 10000 rows, the numbers would be cut off.- When the row is selected the color of the text should be white- Centering the number column would differentiate it from the rest of the table and prevent any confusionSelect all triangle:- This seems to have shifted up and to the left slightly.While editing data, when you paste a new row, that line should come into view.Issue in the code:- In sqleditor/command.py:473 the variable `column_data` is not initializedWe were looking into the menu's to access and Edit Data editor, and we noticed that in the menu it is still called "View Data". We are aware that this change was not introduced in this patch, but we just noticed it. It should be consistent.ThanksShirley & JoaoOn Tue, Jun 27, 2017 at 12:19 PM, Robert Eckhardt <reckhardt@pivotal.io> wrote:On Tue, Jun 27, 2017 at 12:16 PM, Khushboo Vashi <khushboo.vashi@enterprisedb.com> wrote: Gr8. Finally no more rebase request for Harshal. :)+1On Tue, Jun 27, 2017 at 3:26 AM, Harshal Dhumal <harshal.dhumal@enterprisedb.com> wrote: Hi,Please find rebased patch.--Harshal DhumalSr. Software EngineerOn Mon, Jun 26, 2017 at 5:24 PM, Harshal Dhumal <harshal.dhumal@enterprisedb.com> wrote: yes i'm working on that only :)--Harshal DhumalSr. Software EngineerOn Mon, Jun 26, 2017 at 5:22 PM, Dave Page <dpage@pgadmin.org> wrote:I'm sorry, it needs rebasing again. If you can do it quickly, I'll
make sure it's the next patch I work on in that area.
Thanks.
On Mon, Jun 26, 2017 at 5:16 AM, Harshal Dhumal<harshal.dhumal@enterprisedb.com> wrote:
> Hi Dave,
>
> Please find updated rebased patch for RM2137
>
> On Fri, Jun 23, 2017 at 9:00 PM, Dave Page <dpage@pgadmin.org> wrote:
>>
>> Hi Harshal,
>>
>> When can we expect an updated version of this patch? I think it's
>> important to get this into the next release.
>>
>> Thanks!
>>
>> On Fri, Jun 16, 2017 at 10:55 AM, Dave Page <dpage@pgadmin.org> wrote:
>> > Hi,
>> >
>> > That's better - the failures are far less random now :-). I got the
>> > following two though, on both PG and EPAS 9.5:
>> >
>> > ============================================================ ==========
>> > 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_t ool_tests.py",
>> > line 95, in runTest
>> > self._query_tool_explain_analyze_buffers()
>> > File
>> > "/Users/dpage/git/pgadmin4/web/pgadmin/feature_tests/query_t ool_tests.py",
>> > line 443, in _query_tool_explain_analyze_buffers
>> > canvas.find_element_by_xpath("//*[contains(string(), 'Shared Read
>> > Blocks')]")
>> > File
>> > "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packa ges/selenium/webdriver/remote/ webelement.py",
>> > line 260, in find_element_by_xpath
>> > return self.find_element(by=By.XPATH, value=xpath)
>> > File
>> > "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packa ges/selenium/webdriver/remote/ webelement.py",
>> > line 508, in find_element
>> > {"using": by, "value": value})['value']
>> > File
>> > "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packa ges/selenium/webdriver/remote/ webelement.py",
>> > line 491, in _execute
>> > return self._parent.execute(command, params)
>> > File
>> > "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packa ges/selenium/webdriver/remote/ webdriver.py",
>> > line 238, in execute
>> > self.error_handler.check_response(response)
>> > File
>> > "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packa ges/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":"//*[contains(string(), 'Shared
>> > Read Blocks')]"}
>> > (Session info: chrome=58.0.3029.110)
>> > (Driver info: chromedriver=2.29.461585
>> > (0be2cd95f834e9ee7c46bcc7cf405b483f5ae83b),platform=Mac OS X 10.12.3
>> > x86_64)
>> >
>> >
>> > ============================================================ ==========
>> > ERROR: runTest
>> > (pgadmin.feature_tests.view_data_dml_queries.CheckForViewDat aTest)
>> > Validate Insert, Update operations in View data with given test data
>> > ------------------------------------------------------------ ----------
>> > Traceback (most recent call last):
>> > File
>> > "/Users/dpage/git/pgadmin4/web/pgadmin/feature_tests/view_da ta_dml_queries.py",
>> > line 104, in runTest
>> > self._add_row()
>> > File
>> > "/Users/dpage/git/pgadmin4/web/pgadmin/feature_tests/view_da ta_dml_queries.py",
>> > line 255, in _add_row
>> > self._update_cell(cell_xpath, config_data[str(idx)])
>> > File
>> > "/Users/dpage/git/pgadmin4/web/pgadmin/feature_tests/view_da ta_dml_queries.py",
>> > line 164, in _update_cell
>> > cell_el = self.page.find_by_xpath(xpath)
>> > File
>> > "/Users/dpage/git/pgadmin4/web/regression/feature_utils/pgad min_page.py",
>> > line 122, in find_by_xpath
>> > return self.wait_for_element(lambda driver:
>> > driver.find_element_by_xpath(xpath))
>> > File
>> > "/Users/dpage/git/pgadmin4/web/regression/feature_utils/pgad min_page.py",
>> > line 205, in wait_for_element
>> > return self._wait_for("element to exist", element_if_it_exists)
>> > File
>> > "/Users/dpage/git/pgadmin4/web/regression/feature_utils/pgad min_page.py",
>> > line 255, in _wait_for
>> > "Timed out waiting for " + waiting_for_message)
>> > File
>> > "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packa ges/selenium/webdriver/support /wait.py",
>> > line 71, in until
>> > value = method(self._driver)
>> > File
>> > "/Users/dpage/git/pgadmin4/web/regression/feature_utils/pgad min_page.py",
>> > line 200, in element_if_it_exists
>> > if element.is_displayed() and element.is_enabled():
>> > File
>> > "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packa ges/selenium/webdriver/remote/ webelement.py",
>> > line 358, in is_displayed
>> > return self._execute(Command.IS_ELEMENT_DISPLAYED)['value']
>> > File
>> > "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packa ges/selenium/webdriver/remote/ webelement.py",
>> > line 491, in _execute
>> > return self._parent.execute(command, params)
>> > File
>> > "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packa ges/selenium/webdriver/remote/ webdriver.py",
>> > line 238, in execute
>> > self.error_handler.check_response(response)
>> > File
>> > "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packa ges/selenium/webdriver/remote/ errorhandler.py",
>> > line 193, in check_response
>> > raise exception_class(message, screen, stacktrace)
>> > StaleElementReferenceException: Message: stale element reference:
>> > element is not attached to the page document
>> > (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 my feature test cases for any database server version/type (PG,
> EPAS) specific failures and I found that test cases are working fine on all
> of them. However I have slightly modified test case to overcome above
> mentioned failures.
>
>>
>> >
>> > On 9.4 everything passes. On 9.6, I get one failure:
>> >
>> > ============================================================ ==========
>> > FAIL: runTest
>> > (pgadmin.feature_tests.view_data_dml_queries.CheckForViewDat aTest)
>> > Validate Insert, Update operations in View data with given test data
>> > ------------------------------------------------------------ ----------
>> > Traceback (most recent call last):
>> > File
>> > "/Users/dpage/git/pgadmin4/web/pgadmin/feature_tests/view_da ta_dml_queries.py",
>> > line 105, in runTest
>> > self._verify_row_data(True)
>> > File
>> > "/Users/dpage/git/pgadmin4/web/pgadmin/feature_tests/view_da ta_dml_queries.py",
>> > line 282, in _verify_row_data
>> > self.assertEquals(cells[idx], config_data[str(idx)][1])
>> > AssertionError: u'[default]' != u'1'
>> > - [default]
>> > + 1
>> >
>
> I guess Khushboo has fixed this recently.
>
>
>>
>> > Screenshots attached.
>> >
>> > On Fri, Jun 16, 2017 at 7:54 AM, Harshal Dhumal
>> > <harshal.dhumal@enterprisedb.com> wrote:
>> >> Hi Dave,
>> >>
>> >> Please find attached patch where I have added timeout of 2 seconds
>> >> before
>> >> selecting object menu in connect to server function.
>> >>
>> >> Note: Apply this patch on top of previous patch for on demand loading
>> >> feature.
>> >>
>> >>
>> >> --
>> >> Harshal Dhumal
>> >> Sr. Software Engineer
>> >>
>> >> EnterpriseDB India: http://www.enterprisedb.com
>> >> The Enterprise PostgreSQL Company
>> >>
>> >> On Fri, Jun 16, 2017 at 2:25 AM, Dave Page <dpage@pgadmin.org> wrote:
>> >>>
>> >>> 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_t ool_tests.py",
>> >>> >> >> line 40, in before
>> >>> >> >> self._connects_to_server()
>> >>> >> >> File
>> >>> >> >>
>> >>> >> >>
>> >>> >> >>
>> >>> >> >> "/Users/dpage/git/pgadmin4/web/pgadmin/feature_tests/query_t ool_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-packa ges/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-packa ges/selenium/webdriver/remote/ webdriver.py",
>> >>> >> >> line 756, in find_element
>> >>> >> >> 'value': value})['value']
>> >>> >> >> File
>> >>> >> >>
>> >>> >> >>
>> >>> >> >>
>> >>> >> >> "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packa ges/selenium/webdriver/remote/ webdriver.py",
>> >>> >> >> line 238, in execute
>> >>> >> >> self.error_handler.check_response(response)
>> >>> >> >> File
>> >>> >> >>
>> >>> >> >>
>> >>> >> >>
>> >>> >> >> "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packa ges/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_t ool_tests.py",
>> >>> >> >> line 119, in runTest
>> >>> >> >> self._query_tool_auto_rollback_enabled()
>> >>> >> >> File
>> >>> >> >>
>> >>> >> >>
>> >>> >> >>
>> >>> >> >> "/Users/dpage/git/pgadmin4/web/pgadmin/feature_tests/query_t ool_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-packa ges/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-packa ges/selenium/webdriver/remote/ webdriver.py",
>> >>> >> >> line 756, in find_element
>> >>> >> >> 'value': value})['value']
>> >>> >> >> File
>> >>> >> >>
>> >>> >> >>
>> >>> >> >>
>> >>> >> >> "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packa ges/selenium/webdriver/remote/ webdriver.py",
>> >>> >> >> line 238, in execute
>> >>> >> >> self.error_handler.check_response(response)
>> >>> >> >> File
>> >>> >> >>
>> >>> >> >>
>> >>> >> >>
>> >>> >> >> "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packa ges/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
>> >>
>> >>
>> >
>> >
>> >
>> > --
>> > 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--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
Blog: http://pgsnake.blogspot.com
Twitter: @pgsnake
EnterpriseDB UK: http://www.enterprisedb.com
The Enterprise PostgreSQL Company
pgadmin-hackers by date: