Hi, Please find attached patch for RM2522.
With this patch grid/column select all time is reduce to ~1 second from 8-10 seconds. 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
diff --git a/web/pgadmin/static/js/selection/range_selection_helper.js b/web/pgadmin/static/js/selection/range_selection_helper.js index 25cd63c..4442f2c 100644 --- a/web/pgadmin/static/js/selection/range_selection_helper.js +++ b/web/pgadmin/static/js/selection/range_selection_helper.js @@ -94,7 +94,7 @@ define(['slickgrid'], function () { var indexArray = []; ranges.forEach(function (range) { if (rangeHasCompleteRows(grid, range)) - indexArray = _.union(indexArray, _.range(range.fromRow, range.toRow + 1)); + indexArray = indexArray.concat(_.range(range.fromRow, range.toRow + 1)); }); return indexArray;