ZABBIX BUGS AND ISSUES

Browser memory leak on some pages of zabbix web interface

Details

  • Type: Bug Bug
  • Status: Closed Closed
  • Priority: Blocker Blocker
  • Resolution: Fixed
  • Affects Version/s: 1.8.6, 1.9.6 (beta)
  • Fix Version/s: 1.8.9, 1.9.9 (beta)
  • Component/s: Frontend (F)
  • Labels:
  • Environment:
    WinXP32 SP3, Opera 11.50 build 1074.
    latest trunk, ~ after r20500
  • Zabbix ID:
    Reviewed 2.0

Description

Last time (~ last week) i have huge problem - my Opera periodically eats all RAM (4GB), it hangs and if i could not close it in time, even OS hangs and i have only one way - press reset button.
Finally i figured out when it happens.

I have opened several Zabbix GUI tabs on the Opera all time, and sometimes i leave opened Dashboard tab in the background and i don't select it for some time. After some short time my system becomes unstable and finally not responds - Opera ate all virtual memory.
It seems here is no this problem with other GUI pages.

When i switch to tab with Dashboard and move mouse over several widgets (without any click, only mouse over !!!) then Opera drops all memory leak.
I have even recorded video how i reproduce the problem :)

Speed of memory leak (only one tab with Dashboard opened) ~ 500 Mbytes/hour of virtual memory.

I have configured monitoring of revision changes for different components on the my dev-server and i can assume that problem can appears between revs 20500 and 20667.

So i think you should to take a look to this situation. And i feel that this situation related to the ZBX-3969.

Another browsers are not tested.

Activity

Hide
Oleksiy Zagorskyi added a comment -

Note: Pages Auto-updating is disabled in the profile (Refresh (in seconds)=0)

Show
Oleksiy Zagorskyi added a comment - Note: Pages Auto-updating is disabled in the profile (Refresh (in seconds)=0)
Hide
Oleksiy Zagorskyi added a comment -

Meh, just rebooted (by reset button). And I've had opened pages: items.php, trigger_prototypes.php, events.php, tr_status.php
It seems not only Dashboard involved. I continue an investigation.

Show
Oleksiy Zagorskyi added a comment - Meh, just rebooted (by reset button). And I've had opened pages: items.php, trigger_prototypes.php, events.php, tr_status.php It seems not only Dashboard involved. I continue an investigation.
Hide
Oleksiy Zagorskyi added a comment -

About the picture "3operas_memory leak.png"
Instance of Opera#2 has only one tab opened - Dashboard.

Other opera instances have ~40-60 tabs opened each.
As i said - problem reproducible not for all front-end pages, and reproducible not for Dashboard page only.

Checked on several different WinXP workstations with the same version of Opera.

Show
Oleksiy Zagorskyi added a comment - About the picture "3operas_memory leak.png" Instance of Opera#2 has only one tab opened - Dashboard. Other opera instances have ~40-60 tabs opened each. As i said - problem reproducible not for all front-end pages, and reproducible not for Dashboard page only. Checked on several different WinXP workstations with the same version of Opera.
Hide
Aleksandrs Saveljevs added a comment - - edited

Same happens in Firefox in Zabbix 1.8.6. See firefox-memory-leak.png. The only thing that computer is doing is showing a single slide show on the monitor.

Show
Aleksandrs Saveljevs added a comment - - edited Same happens in Firefox in Zabbix 1.8.6. See firefox-memory-leak.png. The only thing that computer is doing is showing a single slide show on the monitor.
Hide
richlv added a comment -

note that slideshow one was reported some time ago already as ZBX-3878

Show
richlv added a comment - note that slideshow one was reported some time ago already as ZBX-3878
Hide
Alexey Fukalov added a comment -

dev branch: svn://svn.zabbix.com/branches/dev/ZBX-3988

Show
Alexey Fukalov added a comment - dev branch: svn://svn.zabbix.com/branches/dev/ZBX-3988
Hide
Aleksandrs Saveljevs added a comment -

Does not seem to leak in Safari, but leaks pretty fast in Internet Explorer 7 and Internet Explorer 9. Also seems to leak slowly in Opera (raised from 130 MB to 190 MB in approximately an hour) on Windows and Firefox and Google Chrome on Linux.

Show
Aleksandrs Saveljevs added a comment - Does not seem to leak in Safari, but leaks pretty fast in Internet Explorer 7 and Internet Explorer 9. Also seems to leak slowly in Opera (raised from 130 MB to 190 MB in approximately an hour) on Windows and Firefox and Google Chrome on Linux.
Hide
Oleksiy Zagorskyi added a comment -

Deep and long tests of this dev branch were made.

Memory leak reproducible only on the page "slides.php" (Opera under Linux & Windows).
Detailed report will be available soon.

Show
Oleksiy Zagorskyi added a comment - Deep and long tests of this dev branch were made. Memory leak reproducible only on the page "slides.php" (Opera under Linux & Windows). Detailed report will be available soon.
Hide
Oleksiy Zagorskyi added a comment -

It seems that memory leaks on the page "slides.php" highly dependent on the screen's (used in the slides) content.
I need some additional time to test.

Show
Oleksiy Zagorskyi added a comment - It seems that memory leaks on the page "slides.php" highly dependent on the screen's (used in the slides) content. I need some additional time to test.
Hide
Oleksiy Zagorskyi added a comment -

the picture attached. sorry

Show
Oleksiy Zagorskyi added a comment - the picture attached. sorry
Hide
Oleksiy Zagorskyi added a comment -

Maybe it's time to commit this changes to 1.8 branch & trunk ?
No more forces to wait

For slide shows we have separate issue ZBX-3878.

Show
Oleksiy Zagorskyi added a comment - Maybe it's time to commit this changes to 1.8 branch & trunk ? No more forces to wait For slide shows we have separate issue ZBX-3878.
Hide
Alexey Fukalov added a comment -

Resolved except slideshow leaks.

Show
Alexey Fukalov added a comment - Resolved except slideshow leaks.
Hide
Aleksandrs Saveljevs added a comment - - edited

(1) You have added loading of menus.js for items.php and slides.php, but we do not have that JavaScript file in our repository.

<asaveljevs> Also, please review r22897.

<Vedmak> RESOLVED

<asaveljevs> CLOSED

Show
Aleksandrs Saveljevs added a comment - - edited (1) You have added loading of menus.js for items.php and slides.php, but we do not have that JavaScript file in our repository. <asaveljevs> Also, please review r22897. <Vedmak> RESOLVED <asaveljevs> CLOSED
Hide
Alexey Fukalov added a comment - - edited

svn://svn.zabbix.com/branches/1.8 22963
svn://svn.zabbix.com/trunk 22968

Show
Alexey Fukalov added a comment - - edited svn://svn.zabbix.com/branches/1.8 22963 svn://svn.zabbix.com/trunk 22968
Hide
Oleksiy Zagorskyi added a comment -

Thank you for fixing !

Show
Oleksiy Zagorskyi added a comment - Thank you for fixing !
Hide
Oleksiy Zagorskyi added a comment -

I feel that memory leaks are back. Not sure for 1.8 or trunk branch.

I need several days to be sure.

Show
Oleksiy Zagorskyi added a comment - I feel that memory leaks are back. Not sure for 1.8 or trunk branch. I need several days to be sure.
Hide
Oleksiy Zagorskyi added a comment - - edited

Yeah, leaks definitely are back. Currently tested only Dashboard page, but after two days I feel that not only dashboard affected.
Tested opera for Linux & Windows.
Trunk rev 23335.

Related only to trunk branch, i.e. latest revision of 1.8 branch is ok.

According to revision changes monitoring (my very specific solution) I suppose the changes between revisions 23287 and 23335 but I'm not sure.
I'll try to figure out affecting revision.

<zalex>
Strange, I have memory leaks even in the revision 22968 (trunk) when this issue was fixed.
Note: I did not tested the fix in that time.

<Vedmak> Leaks are in Dashboard screen?

<zalex> yes, leaks are not only in th dashboard. In the triggers, events pages too. I think in other pages too.

<pavels> zalex, when you tested opera, did it leak continuously? I've tried to open about 20 trigger pages simultaneously and it ate up about 20 Mb per refresh, but when it reached 350 Mb the leak seamed to stop and stabilized. I tried it on a different page with just some content and auto refresh, and it seams opera does leak when refreshing a page, but always stabilizes at some point. The trigger page doesn't leak in Firefox or Chrome, the dashboard seems to leak a bit, but much slower.

<zalex> pavels, a dynamic of leak in the Opera for windows and linux is different. In windows need to wait ~ 5-10 minutes to see the leaking start. In windows it up every minute and constantly.
Last time (latest trunk revision) the leaks in Linux is different - need to wait 20-30 minutes to see BIG pieces of memory eating (200-300 MBytes if I recall correctly). If you will wait 1-2 hours you will see several such memory's jumps. If I recall correctly, earlier (2-3 months ago) the dynamic in linux was similar as in windows.

No need to open many tabs/pages, single page is enough.

I always have auto-refresh pages DISABLED, i.e. 0 seconds.
If you need fresh graphs I'll create them.

<pavels> Wait, you mean that the trigger and event pages leak even when auto refresh is disabled?

<zalex> Yes, definitely. All my life (on all zabbix installation, databases, etc) I have auto-refresh pages DISABLED, i.e. 0 seconds.
All current and previous tests have been performed with auto-refresh pages DISABLED, i.e. 0 seconds.
I have disabled it always because I'm not end user of Zabbix frontend and I do not need to have it enabled.
See my very first comment to this issue.

<pavels> Found were the leak is. Now all I need is to figure out how to fix it.

Show
Oleksiy Zagorskyi added a comment - - edited Yeah, leaks definitely are back. Currently tested only Dashboard page, but after two days I feel that not only dashboard affected. Tested opera for Linux & Windows. Trunk rev 23335. Related only to trunk branch, i.e. latest revision of 1.8 branch is ok. According to revision changes monitoring (my very specific solution) I suppose the changes between revisions 23287 and 23335 but I'm not sure. I'll try to figure out affecting revision. <zalex> Strange, I have memory leaks even in the revision 22968 (trunk) when this issue was fixed. Note: I did not tested the fix in that time. <Vedmak> Leaks are in Dashboard screen? <zalex> yes, leaks are not only in th dashboard. In the triggers, events pages too. I think in other pages too. <pavels> zalex, when you tested opera, did it leak continuously? I've tried to open about 20 trigger pages simultaneously and it ate up about 20 Mb per refresh, but when it reached 350 Mb the leak seamed to stop and stabilized. I tried it on a different page with just some content and auto refresh, and it seams opera does leak when refreshing a page, but always stabilizes at some point. The trigger page doesn't leak in Firefox or Chrome, the dashboard seems to leak a bit, but much slower. <zalex> pavels, a dynamic of leak in the Opera for windows and linux is different. In windows need to wait ~ 5-10 minutes to see the leaking start. In windows it up every minute and constantly. Last time (latest trunk revision) the leaks in Linux is different - need to wait 20-30 minutes to see BIG pieces of memory eating (200-300 MBytes if I recall correctly). If you will wait 1-2 hours you will see several such memory's jumps. If I recall correctly, earlier (2-3 months ago) the dynamic in linux was similar as in windows. No need to open many tabs/pages, single page is enough. I always have auto-refresh pages DISABLED, i.e. 0 seconds. If you need fresh graphs I'll create them. <pavels> Wait, you mean that the trigger and event pages leak even when auto refresh is disabled? <zalex> Yes, definitely. All my life (on all zabbix installation, databases, etc) I have auto-refresh pages DISABLED, i.e. 0 seconds. All current and previous tests have been performed with auto-refresh pages DISABLED, i.e. 0 seconds. I have disabled it always because I'm not end user of Zabbix frontend and I do not need to have it enabled. See my very first comment to this issue. <pavels> Found were the leak is. Now all I need is to figure out how to fix it.
Hide
Pavels Jelisejevs added a comment -

Well that was fun and interesting. RESOLVED in /branches/dev/ZBX-3988-trunk

Show
Pavels Jelisejevs added a comment - Well that was fun and interesting. RESOLVED in /branches/dev/ZBX-3988-trunk
Hide
Oleksiy Zagorskyi added a comment - - edited

Fast test of dev branch shows that the leaks are missing at the events page (Opera for Windows and Linux).
A report of more deep testing and all pages will be ready in 1-2 days.

<zalex> Report of long testing is ready.
Tested Opera 10.52 for Windows and Linux. Tested for 4-5 hours with opened ~ 24 tabs (almost all "affected" pages) each time. Tested in both modes: auto-refresh pages disabled and enabled (30 seconds).
The page "slides.php" WAS NOT USED IN THE TESTS (will be done separately soon).

NO MORE MEMORY LEAKS !!! Thanks.

Show
Oleksiy Zagorskyi added a comment - - edited Fast test of dev branch shows that the leaks are missing at the events page (Opera for Windows and Linux). A report of more deep testing and all pages will be ready in 1-2 days. <zalex> Report of long testing is ready. Tested Opera 10.52 for Windows and Linux. Tested for 4-5 hours with opened ~ 24 tabs (almost all "affected" pages) each time. Tested in both modes: auto-refresh pages disabled and enabled (30 seconds). The page "slides.php" WAS NOT USED IN THE TESTS (will be done separately soon). NO MORE MEMORY LEAKS !!! Thanks.
Hide
Alexei Vladishev added a comment - - edited

It is not about memory leaks, but please also test if blinking works fine without any visible problems in case of large number of visual elements, say, 1000 of triggers with some of them blinking. It is because the new algorithm is more CPU intensive.

<pavels> Tested it in firefox with about 700 events, all of them blinking. CPU usage does go up about 10 percentage points, but the page stayed responsive and I haven't noticed any slow downs at all.

<zalex> Tested Opera for Windows and Linux with blinking 1000 rows at the events and triggers pages.
I do not see|feel any difference under Windows + Core2Duo 2Ghz.
Under Linux +Corei5 2,86Ghz Opera process consumes +5% when tested page is opened. Per all CPU it's only ~ +(1-2)%

Show
Alexei Vladishev added a comment - - edited It is not about memory leaks, but please also test if blinking works fine without any visible problems in case of large number of visual elements, say, 1000 of triggers with some of them blinking. It is because the new algorithm is more CPU intensive. <pavels> Tested it in firefox with about 700 events, all of them blinking. CPU usage does go up about 10 percentage points, but the page stayed responsive and I haven't noticed any slow downs at all. <zalex> Tested Opera for Windows and Linux with blinking 1000 rows at the events and triggers pages. I do not see|feel any difference under Windows + Core2Duo 2Ghz. Under Linux +Corei5 2,86Ghz Opera process consumes +5% when tested page is opened. Per all CPU it's only ~ +(1-2)%
Hide
Pavels Jelisejevs added a comment -

Merged the jqBlink fix to the trunk r24269.

CLOSED.

Show
Pavels Jelisejevs added a comment - Merged the jqBlink fix to the trunk r24269. CLOSED.
Hide
hamid sfandiari added a comment -

I've same issue on Firefox and chrome .. it's occurs when I used a slide show which contains graph, but when I load a side show with map(s) the problem is not occurs

Show
hamid sfandiari added a comment - I've same issue on Firefox and chrome .. it's occurs when I used a slide show which contains graph, but when I load a side show with map(s) the problem is not occurs
Hide
Oleksiy Zagorskyi added a comment -

Hamid, I'd suggest you to move this comment to the ZBX-3878.
Please do mention a version of zabbix frontend used, versions of your Browser ans describe as much details as possible.
Thanks.

Show
Oleksiy Zagorskyi added a comment - Hamid, I'd suggest you to move this comment to the ZBX-3878. Please do mention a version of zabbix frontend used, versions of your Browser ans describe as much details as possible. Thanks.

People

Vote (1)
Watch (4)

Dates

  • Created:
    Updated:
    Resolved: