Firefox Memory Leak



It appears the memory leak in Firefox is back. I do know there have been issues between Firefox and Norton in the past and there may be again. The current version of Firefox is 54.0.1. Norton indicates it is current. OS is Windows 7 32-bit. Watching through the task manager Firefox keeps grabbing more an more memory. ECharts is “a powerful, interactive charting and visualization library for browser”, an open-source js library developed by the team of Baidu.The interface of ECharts is very simple that just takes an object for the options, and it can create thousands of visualization combinations. Restart Firefox. If you leave Firefox open for a longer period of time, it tends to use more system. Kelvin Au's Blog Post. I have been planning to write more articles, but in last few months I was quite busy on working for the project 1000class.com, which is a platform that helps students in California to find all the transferable courses with continuous up-to-date data from 100+ colleges.The project is quite stable now and I have more time to write more articles (there is a list of items I. HelpMemory Leak. All memory drained and used Today, my computer decided for some reason to start hogging all the memory. The memory slowly goes up after around 3:30 minutes of being open. CPU usage is at regular. I have tried many things to fiqure out the problem. Not even safe mode works. Also it's very weird because i have 6gb of.

edited April 2015 in Priority support

after using :
DTInstances.getLast().then(function (dtInstance) {
dtInstance.DataTable.rows().invalidate().draw(false);
});
to apply sort, IE and Firefox crash after period of time and when checking memory for IE and Firefox, memory increasing

please, check the following URLs for images contain memory progress in ie :

http://54.191.119.153:8080/static/ie-21.png
http://54.191.119.153:8080/static/ie-22.png

«12»

Replies

  • Posts: 52,889Questions: 1Answers: 8,129Site admin

    Hi,

    Are you using the latest version of FixedColumns (per the discussion in your other thread) when doing this test? The current release will unfortunately have a memory leak as it isn't releasing all of its event handlers.

    Regards,
    Allan

  • i am testing on fixedColumns v3.0.4 and before that and now testing in fixedColumns v3.0.5 all have the same issue
    please, i need to know which release contain the fix of this issue and when????

  • Posts: 52,889Questions: 1Answers: 8,129Site admin

    If the latest FixedColumns didn't fix the issue, this is unfortunately likely to be quite difficult to debug. I will get back to you when I have more information.

    Regards,
    Allan

  • please, i need to fix this issue my app force close in Firefox and IE
    i have updates every 2000 update per second
    this issue not acceptable for my environment

  • Posts: 52,889Questions: 1Answers: 8,129Site admin

    2000 updates per second?! That's a lot!

    I'm still looking into what is causing this issue I'm afraid. However, with that many updates per second, the workaround we came up with in one of your other threads to invalidate the whole table on each update is not a good one. I will also need to spend some time looking into your code to suggest a more efficient way of doing it.

    I'll reply back when I have more information.

    Allan

  • Posts: 52,889Questions: 1Answers: 8,129Site admin

    Another update - I'm quite certain that the issue is in FixedColumns and I'm reasonably sure that it is to do with how FixedColumns is cloning the header cells from the original DataTable for display in the fixed columns. It will copy all of the header cells, but not all are displayed, which means they don't have their event handlers removed when they are destroyed.

    How exactly to correct that is something I am still working on.

    Regards,
    Allan

  • Posts: 52,889Questions: 1Answers: 8,129Site admin

    I've just committed a couple of fixes for memory leaks in FixedColumns that should address the leak you are seeing here. Could you try using the nightly version of FixedColumns please? The build date is '23rd Apr 2015, 15:34'.

    Thanks,
    Allan

  • Thanks for reply
    i admit memory leaks reduced but still exist memory leaks
    my memory leaks test : http://54.191.119.153:8080/static/performance.png

  • Posts: 52,889Questions: 1Answers: 8,129Site admin

    Could you possibly update your static/grid.html page with the latest code and I'll take a further look into what is happening.

    Memory is always difficult!

    Thanks,
    Allan

  • updated : http://54.191.119.153:8080/static/grid.html

  • edited April 2015

    I have big another Big issue when hide same columns and reorder columns they back all to show columns can you test it in http://54.191.119.153:8080/static/grid.html just try to reorder with column with auto sort

  • Posts: 52,889Questions: 1Answers: 8,129Site admin

    Thanks for the update.

    It would appear that there are three areas in the FixedColumns code where events are being cloned from the source DataTable (for example the click to sort on column header event) which are not being removed when the table is being fully redrawn each time. I will continue to look into this and let you know how I get on.

    Regarding the column reordering issue - I suspect that at least part of the issue will be with the rapid updating of the data. Unfortunately the support credits have run out now so I won't be able to look into this immediately (I'm actually not sure that there is a possible fix for this one), but I will continue to look into the memory issue as priority support and hopefully get back to you soon.

    Regards,
    Allan

  • Posts: 52,889Questions: 1Answers: 8,129Site admin

    Hi,

    I've just committed an update for FixedColumns that corrects the memory issue that can be seen in your demo. Thanks again for putting that up!

    The latest FixedColumns nightly contains the fix and running your demo locally shows its memory use remaining stable.

    Regarding the column visibility, I had a little look at this. It appears to be caused by a listener that the Angular DataTables code adds that will destroy the DataTable when ColReorder has finished its reordering. The whole lot is then recreated, but with the original column visibility applied. What is interesting is that this isn't 100% reproducible - sometimes I need to try it a couple of times to trigger the error. It might be worth asking in the angular-datatables repo issues about this one as I'm afraid I have no knowledge of Angular myself.

    Regards,
    Allan

  • edited June 2015

    Hi,
    i sent to you before about problem in fixed column and you sent new version, but i still have big performance issue make my app very slow because of memory leak
    and when disabling fixed column, no memory leak happened
    i attached links for testing for memory leak with fixed column and without it :

    and i have url for you to test the problem :

    username : mai002
    password : kn123456

    please click on refresh icon (in black square in attached image) more than one time to see the memory leak issue

  • Posts: 52,889Questions: 1Answers: 8,129Site admin

    Thanks for the update. Unfortunately I'm not managed to get the time to take a look into this yet. I will try to do so as soon as possible.

    Allan

  • Hi Allan,
    we are in closer phase of project and this is very critical for us

  • Hi Allan,
    i want ask you if we renew our support, you can help us to fix this issue

  • Posts: 52,889Questions: 1Answers: 8,129Site admin

    Hi,

    Yes, that would certainly allow me to prioritise this work over the other work that I am doing. I hope to look at this later this week even if you don't renew the support option. But purchasing support would make certain of it, and it would be done sooner rather than later.

    Regards,
    Allan

  • Hi,
    i purchased support, please we need your priority in this issue

  • Posts: 52,889Questions: 1Answers: 8,129Site admin

    Fantastic - thanks. I'm looking into this just now and will get back to you as soon as possible.

    Regards,
    Allan

  • Posts: 52,889Questions: 1Answers: 8,129Site admin

    I sent an e-mail a little while ago, it is possible it didn't get through so I'm posting here as well just in case!

    The links above does appear to be working at the moment. Could you possibly give me an updated link or bring the server back online so I can do a little bit of testing with your pages.

    Thanks,
    Allan

  • Posts: 52,889Questions: 1Answers: 8,129Site admin

    Great - thanks.

    Sorry to ask for one more thing - it appears the websocket that is being used is not resolving:

    ws://dev-dummy:61614/stomp' failed: Error in connection establishment: net::ERR_NAME_NOT_RESOLVED

    Unfortunately I'm struggling to reproduce the issue at the moment, so I thin I will need to be able to use your page to recreate the problem for diagnosis.

    Regards,
    Allan

  • Posts: 52,889Questions: 1Answers: 8,129Site admin

    That's excellent - thank you.

    Could you confirm if I need to perform some action such as toggling table sorting, or tabs or something else to cause the memory leak to appear? I've just been running a memory trace in IE for the last 3 minutes and it is holding at a fairly static value.

    Many thanks,
    Allan

  • Allan,
    over on the header that write on it orders details and you can find refresh button please click on it many times i set between in black square
    you can find it in this image http://kncairo.kn-it.org:8087/Etrade-Plus/resources/fixedColumn.jpg

  • Posts: 52,889Questions: 1Answers: 8,129Site admin

    Fantastic - thanks for pointing that out! I've just been debugging this and I'm fairly certain that it is a conflict between DataTables an Angular when destroying a table - the way DataTables operates means that the Angular destroy method on the nodes doesn't occur, which results in an event being retained - hence the issue.

    I'm going to experiment a little bit more before committing the change required in DataTables. I'll do this first thing tomorrow morning and get back to you then. Hopefully that will resolve the issue!

    Allan

  • Posts: 52,889Questions: 1Answers: 8,129Site admin

    I've just committed the fix that I think is required to address this. I'm not able to test this directly on your system of course so it is possible that I've not fully fixed the issue, but I am hopeful that it will address it fully.

    To test, if you could try using the 1.10.8-dev version of DataTables on your page, that would be great.

    Many thanks,
    Allan

  • Hi Allan,
    i put the file DataTables 1.10.8-dev, and tell me if you need to change any others files

  • Posts: 52,889Questions: 1Answers: 8,129Site admin

    Thank you - unfortunately that doesn't appear to have fixed the issue after all. There is still an Angular hook somewhere that it causing the leak.

    The site runs exceptionally slowly on my machine making debugging it really difficult, so I'll need to spend a bit of time trying to recreate the issue locally and debug further. I'll get back to you when I have some more information.

    Thanks,
    Allan

At times, Firefox may require significant system resources in order to download, process, and display web content. If you are experiencing periods of sustained high resource usage while using Firefox, this article presents some options for you to review.

  • The CPU (Central Processing Unit) is the 'brain' of the computer.
  • The RAM (Random Access Memory) or Memory helps your computer perform multiple tasks at the same time.
  • When your system resources are being heavily used, the overall performance and stability of the computer can be impacted.
  • Depending on your operating system, you can review and monitor resource usage through specific tools. See the Use additional troubleshooting tools section below for more information.
Note: If you send performance data, Mozilla will gather data including memory and CPU usage, which will help make Firefox better for future versions.

Table of Contents

  • 13Use additional troubleshooting tools

The latest Firefox version may include performance improvements. Update Firefox to the latest release.

Firefox may use more system resources if it's left open for long periods of time. A workaround for this is to periodically restart Firefox. You can configure Firefox to save your tabs and windows so that when you start it again, you can start where you left off. See Restore previous session - Configure when Firefox shows your most recent tabs and windows for details.

Firefox may grind to a halt due to operating system issues, such as a pending Windows update, that can be resolved by restarting your computer.

Extensions and themes can cause Firefox to use more system resources than it normally would.

To determine if an extension or theme is causing Firefox to use too many resources, start Firefox in its Safe Mode and observe its memory and CPU usage. In Safe Mode, extensions and themes are disabled, so if you notice a significant improvement, you can try disabling or uninstalling extensions.

  • For more information on starting Firefox in Safe Mode and on how to find which extension or theme is causing your problem, see Troubleshoot extensions, themes and hardware acceleration issues to solve common Firefox problems.

Many web pages have content you don't need, but which still use system resources to display its content. Firefox's built-in content blocking can help save resources by preventing third-party tracking content from loading. See the Content blockingEnhanced Tracking Protection article for details.

Some extensions allow you to block unnecessary content; for example:

  • Adblock Plus and uBlock Origin allow you to hide ads on websites.
  • NoScript allows you to selectively enable and disable scripts running on websites.
End of Flash support: Like other browsers and Adobe, Firefox is endingended Flash support at the end of 2020. Please see End of support for Adobe Flash for more information.

If Adobe's Flash Player plugin is installed, rendering Flash content in full screen can be accelerated by hardware. This can ease resource usage in case of a dedicated graphics card.

  1. Navigate to a page that shows a Flash video.
  2. Right-clickHold down the Ctrl key while you click on the video player and click Settings… in the context menu. The Adobe Flash Player Settings screen will open.
  3. Click on the icon at the bottom-left of the Adobe Flash Player Settings window to open the Display panel.
  4. Check Enable hardware acceleration is selected.
  5. Click to close the Adobe Flash Player Settings Window.

Each tab requires Firefox to store a web page in memory. If you frequently have more than 100 tabs open, consider using a more lightweight mechanism to keep track of pages to read and things to do, such as:

  • Bookmarks. Hint: 'Bookmark All Tabs' will bookmark a set of tabs.
  • Save web pages for later with Pocket for Firefox.
  • To-do list applications.

Firefox hardware acceleration eases memory and CPU usage in many cases.Check in Firefox's performance settings that hardware acceleration is turned on. Also make sure that your graphics drivers are up-to-date.

With Multiprocess Firefox, also called electrolysis or e10s , Firefox runs web content for all tabs separately from the main Firefox process for increased security and performance. Using multiple content processes can further increase performance and minimize the impact of content process crashes. You can modify Firefox's performance settings to change the content process limit.

Leak

You can set between one and eight content processes. The default is eight. Having more content processes can improve performance when using multiple tabs but it will also use more memory. You can reduce the number of content processes if your computer is running out of memory.

Having many applications running simultaneously may cause your computer to run slowly and other applications to do so as well. By closing down some of the unnecessary applications, system usage will be reduced.

Firefox stores your data in various files in your profile folder. The file used for saving individual website settings might be corrupt. If you delete (or rename) that file, your zoom level settings will be reset but it could decrease CPU usage.

    • Click the menu button , click Help and select Troubleshooting Information.From the Help menu, select Troubleshooting Information. The Troubleshooting Information tab will open.
    • Under the Application Basics section next to Profile FolderDirectory, click . A window will open that contains your profile folder.Your profile folder will open.
    Note: If you are unable to open or use Firefox, follow the instructions in Finding your profile without opening Firefox.
  1. Click the Firefox menu and select Exit.Click the Firefox menu at the top of the screen and select Quit Firefox.Click the Firefox menu and select Quit.
  2. In your profile folder, delete the file content-prefs.sqlite. It will be recreated next time you open Firefox.

The Refresh Firefox feature can fix many issues by restoring your Firefox profile to its default state while saving your essential information.See Refresh Firefox - reset add-ons and settings for details.

There are a variety of troubleshooting tools that can be used both in Firefox and on your operating system to troubleshoot elevated system resource usage.

Firefox tools

  • The Firefox Task Manager (not to be confused with Windows Task Manager) is a great tool to see what tabs and extensions are using the most system resources.
  • The about:memory page allows you to troubleshoot specific issues relating to memory (for instance, caused by a website, an extension, a theme, etc.) and sometimes its button may help you instantly reduce memory usage. For guidance on use of about:memory visit about:memory.
  • Even if you're not a programmer, you can try your hand at some other tools and tips Firefox developers use to debug leaks.

Operating system tools

  • View how system resources are being used by checking the Windows Task ManagerPerformance tab (click on 'More details' in the Task Manager to show all tabs). See this Windows blog post at Microsoft's site for more information.
  • View how system resources are being used by checking Activity Monitor. See How to use Activity Monitor on your Mac at Apple's site for more information.
  • Although it's not included on every distribution of Linux, most versions of Linux have a graphical resource monitor. It's often called System Monitor, but there are other alternatives also available.
  • Running the top command in the terminal will display a list of all the running processes and their system resource consumption.
WARNING: There are a variety of third-party programs that promise to increase your computer's performance. You should exercise caution when installing third-party software and only use reputable software provided by an official source.
Firefox

Firefox Memory Leak Windows 10

If you exhausted all tips in the previous sections and your memory usage is still close to the maximum, maybe it's time for you to add more memory to your computer. Adding RAM will provide a huge performance boost.

Firefox Memory Leak Reddit

If you exhausted all tips in the previous sections and you are still experiencing high system resource usage, it may be time to upgrade your computer. As technology progresses, software is becoming more advanced and requires more powerful computers to run effectively.