ember.js: Internet Explorer 11 process memory leak

I’m not sure if this is an Ember issue or an Internet Explorer issue…

I have created a sample application that illustrates the problem at https://github.com/jdenly/ember-ie-leak, using Ember Canary. It contains an Ember CLI generated application with two routes and a couple of links on the application template.

Loading the application, either using ember s or a production build in another web server and then clicking between the two routes causes a process memory leak in Internet Explorer 11 (specifically 11.0.9600.18349, update version 11.0.32 (KB3160005)).

Using the IE developer tools shows all objects allocated are cleaned up when clicking between the routes, yet the heap size and process memory is still growing.

ieleak

Drilling down into the retained objects seems to show HTMLDivElement being retained.

ieleak2

If I run the same test in Chrome (Version 52.0.2743.82 m (64-bit)) and take three snapshots repeating the same movement between routes in each one, I can see all objects allocated between snapshot 1 and 2 are gone.

ieleak3

I have also created a Selenium test that just clicks between the two routes using the links. When run for 100 iterations in Internet Explorer, it shows a saw tooth growth of process memory. Calling CollectGarbage() has no effect on the process memory in use and if run for long enough (around 300 iterations), Internet Explorer will top out at about 1.7GB of memory in use and will crash.

ieleak4

This same test can be run for 10,000 iterations in Chrome without causing this growth of process memory (as reported by Chrome Task Manager). Chrome’s process memory for the tab rises to about 110MB and then stabilises for the length of the test. Once the test finishes, the memory drops back to ~50MB, unlike IE that never drops.

I have found a reported memory leak in Internet Explorer Edge and 11, but this seems to relate to not cleaning up when the application is reloaded.

https://developer.microsoft.com/en-us/microsoft-edge/platform/issues/8020622/

Coincidently, this Ember app also seems to be affected by this bug but I don’t know if this is related to the process memory growth when not reloading the application.

About this issue

  • Original URL
  • State: closed
  • Created 8 years ago
  • Reactions: 2
  • Comments: 31 (12 by maintainers)

Most upvoted comments

@stefanpenner I’m trying to source a system onsite that has Edge. I’ll report back when I find one.

@GramozKrasniqi thanks, I had grabbed that last week but I have yet to start it up. Still trying to measure the exact usage problems in IE11.

@stefanpenner Finally got round to installing IE 1.0.33 on Windows 7 and the issue still appears to be happening, it’s reporting 1.27KB of extra heap per navigation between the routes and back but the object count is steady.

Version: 11.0.9600.18376 Update Versions: 11.0.33 (KB3170106)