Opened 8 years ago

Closed 4 years ago

#12847 closed defect (patchwelcome)

Possible memory leak with dojo Gauge widgets

Reported by: memento Owned by: tissandier
Priority: high Milestone: 1.13
Component: DojoX Widgets Version: 1.6.0
Keywords: Gauge, AnalogGauge, BarGauge, memory leak Cc: dmoor2@…
Blocked By: Blocking:

Description (last modified by bill)

It seems that each time a gauge is updated with a new value, memory is consumed that is not released. I have experienced this issue with both dojox.widget.AnalogGauge? and dojox.widget.BarGauge?.

The attached test takes a AnalogGauge? and updates its value 60 times when the start button is pressed. Using Google Chrome's memory profiler both before and after the test one can see this clearly.

We have many of these widgets on a dashboard which are automatically refreshed. Overtime, this slows the browser down and requires our webapp to be restated.

We tested for the issue in 1.4 and 1.6.

BarGauge also seems to have a memory leak associated to SVG objects.

Attachments (1)

chartT.html (4.0 KB) - added by memento 8 years ago.
Memory Leak Demo - use with Google Chrome Profiler

Download all attachments as: .zip

Change History (5)

Changed 8 years ago by memento

Attachment: chartT.html added

Memory Leak Demo - use with Google Chrome Profiler

comment:1 Changed 8 years ago by cschanz

I have a similar problem with GlossySemiCircularGauge?:

When updating min and/or max in a loop there seems to be a big memory leak. Checking if min/max have changed since the last update and only updating if they differ solved the problem for the moment as min/max only change seldom.

comment:2 Changed 8 years ago by bill

Description: modified (diff)
Owner: changed from dante to tissandier
Status: newassigned

comment:3 Changed 7 years ago by marzubus

I have this exact issue using GlossyGauge?'s and dojo 1.7.2. I have a webapp with gauges that update every minute and heap is always increasing until chrome dies. The biggest data seems to be an array of SVG elements.

Kegan

comment:4 Changed 4 years ago by dylan

Milestone: tbd1.12
Resolution: patchwelcome
Status: assignedclosed

dojox/widget/gauges has been mostly replaced by dojox/dgauges. As such, closing as patchwelcome.

Note: See TracTickets for help on using tickets.