On Fri, Jun 30, 2017 at 8:57 AM, Murtuza Zabuawala < murtuza.zabuaw...@enterprisedb.com> wrote:
> I guess so, number of columns do have overhead on selection & copy/paste > operation because of arbitrary copy paste feature, now we have to scan > start cell (first selected cell) & end cell (last selected cell) for each > row, In old code we were selecting complete row which was fast but now user > can select different columns as well, so we have scan for each selected > columns. > Yeah, but 14 - 15 seconds for 100K rows? It takes a fraction of that time to find them in the database, return the results to the pgAdmin server, and render them. We should be able to generate a CSV representation of all the selected fields in far less time. > > -- > Regards, > Murtuza Zabuawala > EnterpriseDB: http://www.enterprisedb.com > The Enterprise PostgreSQL Company > > On Fri, Jun 30, 2017 at 12:07 PM, Dave Page <dp...@pgadmin.org> wrote: > >> Hi >> >> On Thursday, June 29, 2017, Harshal Dhumal <harshal.dhumal@enterprisedb.c >> om> wrote: >> >>> >>> >>> On Thu, Jun 29, 2017 at 4:33 PM, Harshal Dhumal < >>> harshal.dhu...@enterprisedb.com> wrote: >>> >>>> Hi, >>>> >>>> Please find attached patch for RM2522. >>>> >>>> With this patch grid/column select all time is reduce to ~1 second from >>>> 8-10 seconds. >>>> >>> This benchmarking is performed with 100k rows and 2 columns (int, text). >>> >> >> I see very little improvement (~15s to 14s). My test case has 108786 >> rows in it, and is generated from the query: >> >> select * from pg_class c, pg_attribute a where c.oid = a.attrelid >> union all >> select * from pg_class c, pg_attribute a where c.oid = a.attrelid >> union all >> select * from pg_class c, pg_attribute a where c.oid = a.attrelid >> union all >> select * from pg_class c, pg_attribute a where c.oid = a.attrelid >> >> Maybe the number of columns has something to do with it? >> >> AND... I'm still left with nothing being copied to the clipboard (the >> main issue by the way, which no patch for this so far seems to have >> tackled). >> >> Thanks. >> >> >>> >>> >>>> >>>> The solution was to use simple array concatenation instead of >>>> underscore union while getting index of all selected complete rows. >>>> Underscore union function is only useful when user selects different >>>> ranges from grid and those ranges overlaps. In this case union function >>>> removes duplicate (overlapped) rows. >>>> However result grid in sqleditor do not support overlapped row >>>> selection so we can simply cancat rows from different ranges without >>>> worrying about overlapped row selection. >>>> >>>> >>>> >>>> -- >>>> *Harshal Dhumal* >>>> *Sr. Software Engineer* >>>> >>>> EnterpriseDB India: 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