Opened 8 years ago

Closed 8 years ago

Last modified 8 years ago

#13690 closed defect (fixed)

LazyTreeGrid should use ancestors' item identifies as treepath

Reported by: Evan Owned by: Evan
Priority: high Milestone: 1.7
Component: DojoX Grid Version: 1.7.0b1
Keywords: lazy, treegrid, cache, treepatch Cc: elvis
Blocked By: Blocking:

Description

Currently LazyTreeGrid? is using '0/1/2' as treepath for caching or querying children, this brings a bit performance affection to deleting/adding new items.

Background - LazyTreeGrid? has a different behavior from either DataGrid? or TreeGrid? - it update the cache partially with only the newly added or deleted items and then update the viewport, and this shall bring better experiences. However the traditional '0/1/2' way as treepath brings potential performance issue since we need to traverse and update the treepath across various levels.

So a better way is to use ancestors' item identifies as treepath so that it's much more faster when deleting or adding items.

Change History (7)

comment:1 Changed 8 years ago by Evan

Resolution: fixed
Status: newclosed

In [26210]:

Fixes #13690 based on the patch from Elvis(IBM, CCLA) - thanks Elvis!

  1. Changing to ancestors' item identifies as treepath to fix potential performance issue during deleting/adding items
  2. Changing to baseless and module return value
  3. Code clean up

Refs #13542 regarding changing to baseless and module return value

comment:8 Changed 8 years ago by Evan

In [26223]:

Refs #13690 add 1 missed matching condition for children treepath

comment:9 Changed 8 years ago by bill

Milestone: tbd1.7

comment:10 Changed 8 years ago by Evan

In [26389]:

Refs #13690, some comments added

comment:11 Changed 8 years ago by Evan

In [26407]:

Refs #13690, test cases updated for LazyTreeGrid? - adding more buttons for invoking key APIs

comment:12 Changed 8 years ago by Evan

In [26626]:

Refs #13690, should also consider hidden columns when calculating a cell width(the cel might also be merged)

comment:13 Changed 8 years ago by Evan

In [26674]:

Refs #13690 backport fix of http://bugs.dojotoolkit.org/changeset/26626 to 1.6.x branch

Note: See TracTickets for help on using tickets.