Opened 10 years ago

Closed 6 years ago

#9706 closed defect (patchwelcome)

[regression] Reduce measurements in the grid

Reported by: Kris Zyp Owned by: Bryan Forbes
Priority: high Milestone: 2.0
Component: DojoX Grid Version: 1.3.2
Keywords: 14open Cc:
Blocked By: Blocking:

Description

One the primary performance bottlenecks for the grid is the extensive measurements that are performed for laying out the rows/cells in the grid. Measurements are extremely expensive operations (because they require the browser to layout the DOM and compute widths and heights). I believe the grid could be much more efficient and fast if these measurements could be reduced.

I am attaching a patch that caches some measurements where possible and introduces a new property on the grid, "rowHeight", which can be used to set a static height for the rows. This property can be set and provide a means for eliminating the need for many of the height measurements that take place during rendering.

Attachments (2)

DataGridFasterMeasurements.patch (4.7 KB) - added by Kris Zyp 10 years ago.
grid_patches_v4.diff (7.0 KB) - added by Adam Peller 9 years ago.
patch from Wolfram

Download all attachments as: .zip

Change History (16)

Changed 10 years ago by Kris Zyp

comment:1 Changed 10 years ago by Bryan Forbes

Kris, this patch is great. Please go ahead and apply and resolve once it's applied.

comment:2 Changed 10 years ago by Kris Zyp

Resolution: fixed
Status: newclosed

comment:3 Changed 10 years ago by dante

Milestone: tbd1.4

for the unpsychic, this was fixed in [19976]

also, please set milestones on tickets marked as closed.

comment:4 Changed 10 years ago by Kris Zyp

Any idea why the changeset didn't connect to the ticket?

comment:5 Changed 10 years ago by dante

@kzyp - no, but sometimes we "lose sync". Always a good idea to doublecheck. You would have received an email presumably showing the resolution change had post-commit done it's work.

comment:6 Changed 10 years ago by haysmark

Priority: normalhigh
Resolution: fixed
Status: closedreopened
Summary: Reduce measurements in the grid[regression] Reduce measurements in the grid
Type: enhancementdefect

I went revision-by-revision and as of [19976], DataGrids? in TabContainers? stopped appearing entirely in Safari 4 and FF 3.5.

  1. Go to http://archive.dojotoolkit.org/dojo-2009-08-29/dojotoolkit/dojox/grid/tests/robot/_DataGrid.html
  2. Click the "Markup structure" tab

You do not see a DataGrid? in the tab! IE8 is unaffected by this bug.

comment:7 Changed 9 years ago by Adam Peller

Keywords: 14open added

moving 1.4 open tickets to 1.5

comment:8 Changed 9 years ago by bill

Milestone: 1.51.6

1.5 is released, moving remaining tickets to 1.6

Changed 9 years ago by Adam Peller

Attachment: grid_patches_v4.diff added

patch from Wolfram

comment:9 Changed 8 years ago by bill

Milestone: 1.6future

(sadly) punting seemingly abandoned ticket and meta tickets to future

comment:10 Changed 8 years ago by evan

Milestone: future1.7

comment:11 Changed 8 years ago by Chris Mitchell

Priority: highnormal

comment:12 Changed 7 years ago by Colin Snover

Milestone: 1.82.0

1.8 has been tagged; moving all outstanding tickets to next major release milestone.

comment:13 Changed 6 years ago by bill

DojoX Grid and EnhancedGrid are deprecated in favor of dgrid and gridx.

You should upgrade your code to use one of those two grids.

We will consider patches to the old DojoX Grid code though.

comment:14 Changed 6 years ago by bill

Resolution: patchwelcome
Status: reopenedclosed
Note: See TracTickets for help on using tickets.