Opened 12 years ago

Closed 9 years ago

#9705 closed enhancement (patchwelcome)

Grid Performance Issue

Reported by: raganesh Owned by:
Priority: high Milestone: future
Component: DojoX Grid Version: 1.3.2
Keywords: Cc:
Blocked By: Blocking:


There is a method "cleanNode" declared in dojox/grid/_Scroller.js. It seems this method is called when the grid view is refreshed/unloaded.

The need for this method, as I understood it, is to identify all widgets that are child widgets of the grid and to destroy them.

But the logic used for identification - use of dijit.registry.filter - means I have to iterate through all widgets that are rendered in the current page.

Is it not inefficient? Why should clean up operation on the grid have a dependancy on the total number of widgets in the page? With increasing number of widgets in the page, the cleanup is bound to get slower.

Suggested solution: having a grid local registry for the purpose of maintaining a reference to the grid's child widgets. At the time of adding a child widget to the grid, this registry will be updated. When the grid view is refreshed/unloaded, "cleanNode" can just iterate through this registry.

Not sure how to submit code patches. Will explore some more and try to submit a patch.

Thanks & Regards, Ganesh Ravindran

Change History (4)

comment:1 Changed 12 years ago by Nathan Toone

Milestone: tbdfuture
Owner: changed from Bryan Forbes to Nathan Toone

comment:2 Changed 12 years ago by Nathan Toone

Owner: Nathan Toone deleted

Unassigning my tickets.

comment:3 Changed 9 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:4 Changed 9 years ago by bill

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