Thanks, patch applied. However, whilst I was testing, I saw just how slow the tool is:
SELECT * FROM pg_attribute In a PEM database, returns 8150 rows. In pgAdmin 3, this is timed at 676ms on my laptop. In pgAdmin 4, the busy spinner runs for approx 5 seconds, then the whole UI freezes. I then have to wait a further 3 minutes and 46 seconds(!!!!) for the operation to complete. Once loaded, scrolling is very sluggish. Please make this your top priority - and if you have incremental improvements, send them as you have them. On Wed, Jun 15, 2016 at 4:50 PM, Akshay Joshi <akshay.jo...@enterprisedb.com > wrote: > Hi > > Please ignore the last patch. Attached is the latest patch. Please review > it. > > On Wed, Jun 15, 2016 at 9:10 PM, Akshay Joshi < > akshay.jo...@enterprisedb.com> wrote: > >> Hi >> >> On Wed, Jun 15, 2016 at 5:54 PM, Dave Page <dp...@pgadmin.org> wrote: >> >>> >>> >>> On Wed, Jun 15, 2016 at 1:16 PM, Ashesh Vashi < >>> ashesh.va...@enterprisedb.com> wrote: >>> >>>> On Wed, Jun 15, 2016 at 5:44 PM, Akshay Joshi < >>>> akshay.jo...@enterprisedb.com> wrote: >>>> >>>>> >>>>> >>>>> On Wed, Jun 15, 2016 at 5:25 PM, Dave Page <dp...@pgadmin.org> wrote: >>>>> >>>>>> Hi >>>>>> >>>>>> On Wed, Jun 15, 2016 at 11:27 AM, Akshay Joshi < >>>>>> akshay.jo...@enterprisedb.com> wrote: >>>>>> >>>>>>> Hi >>>>>>> >>>>>>> I have fixed RM #1356 "Query tool enhancement". I have added the >>>>>>> logic to preferences which checks the min/max value before setting it. >>>>>>> If >>>>>>> value given by user is less than min value then set it to min value and >>>>>>> if >>>>>>> value is greater then max value then set it to max value. >>>>>>> >>>>>>> For "items_per_page" minimum value is 1. Attached is the patch file. >>>>>>> Please review it. >>>>>>> >>>>>> >>>>>> That doesn't do what I asked for though. A value of zero should be >>>>>> acceptable (I did say <= 0, but = 0 is probably better), and mean >>>>>> 'disable >>>>>> paging' (i.e. display unlimited rows, and completely hide the paging >>>>>> controls). From the ticket: >>>>>> >>>>>> 1) If "Items per page in grid" <= 0, then never page results. Add a >>>>>> note to that effect on the Preferences pane, and make zero the default >>>>>> value. >>>>>> >>>>>> The patch does appear to implement: >>>>>> >>>>> >>>>> Backbone's Pageble Collection don't allow Zero value. Below is the >>>>> check present in "backbone.paginator.js" file: >>>>> >>>>> if (pageSize < 1) { >>>>> throw new RangeError("`pageSize` must be >= 1"); >>>>> } >>>>> >>>> We can avoid using the Pageable Collection in our code, when pageSize >>>> is <= 0 to fix the issue. >>>> >>> >>> Exactly. The entire point of the change is to default to not paging at >>> all. >>> >>> BTW, this may be helpful (also missed from the original patch): >>> >>> help_str=gettext('The number of rows to display per page in the results >>> grid. A value of 0 will disable paging.'), >>> >> >> Fixed above as per suggestion. Attached is the modified patch file. >> Please review it. >> >>> >>> -- >>> Dave Page >>> Blog: http://pgsnake.blogspot.com >>> Twitter: @pgsnake >>> >>> EnterpriseDB UK: http://www.enterprisedb.com >>> The Enterprise PostgreSQL Company >>> >> >> >> >> -- >> *Akshay Joshi* >> *Principal Software Engineer * >> >> >> >> *Phone: +91 20-3058-9517 <%2B91%2020-3058-9517>Mobile: +91 976-788-8246* >> > > > > -- > *Akshay Joshi* > *Principal Software Engineer * > > > > *Phone: +91 20-3058-9517 <%2B91%2020-3058-9517>Mobile: +91 976-788-8246* > -- Dave Page Blog: http://pgsnake.blogspot.com Twitter: @pgsnake EnterpriseDB UK: http://www.enterprisedb.com The Enterprise PostgreSQL Company