flink-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "ASF GitHub Bot (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (FLINK-5150) WebUI metric-related resource leak
Date Thu, 12 Jan 2017 12:18:57 GMT

    [ https://issues.apache.org/jira/browse/FLINK-5150?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15820872#comment-15820872
] 

ASF GitHub Bot commented on FLINK-5150:
---------------------------------------

GitHub user zentol opened a pull request:

    https://github.com/apache/flink/pull/3104

    [FLINK-5150] [webui] Store metrics in sessionStorage

    This PR modifies the webfrontend to no longer store the metrics setup (selected metrics
+ their values) in localStorage but sessionStorage instead.
    
    Using localStorage means that data is never deleted unless explicitly told. It survives
moving across pages, but also browser restarts. We currently lack an automatic explicit removal,
which was problematic since metrics for previous jobs (that may even have been executed on
a completely different cluster) were still being updated. For example, if i ran any job on
my local machine it would fire 30+ requests regularly for dead metrics.
    
    By moving to sessionStorage this issue is solved since the data is cleared when the page
is closed. However, you can still navigate to other pages and the setup will survive. As a
bonus you can now have 2 tabs for the same task with different metric setups!

You can merge this pull request into a Git repository by running:

    $ git pull https://github.com/zentol/flink 5150_webui_rl

Alternatively you can review and apply these changes as the patch at:

    https://github.com/apache/flink/pull/3104.patch

To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:

    This closes #3104
    
----
commit bb0415c2e879e3a2b5e977484c529d3d6a94c657
Author: zentol <chesnay@apache.org>
Date:   2017-01-12T12:12:24Z

    [FLINK-5150] [webui] Store metrics in sessionStorage

----


> WebUI metric-related resource leak
> ----------------------------------
>
>                 Key: FLINK-5150
>                 URL: https://issues.apache.org/jira/browse/FLINK-5150
>             Project: Flink
>          Issue Type: Bug
>          Components: Webfrontend
>    Affects Versions: 1.1.3
>            Reporter: Chesnay Schepler
>            Assignee: Chesnay Schepler
>            Priority: Critical
>             Fix For: 1.2.0
>
>
> The WebUI maintains a list of selected metrics for all jobs and vertices. When a metric
is selected in the metric screen it is added to this list, and removed if it is unselected.
> The contents of this list are stored in the browser's localStorage. This allows a user
to setup a metric screen, move to another page, and return to the original screen completely
intact.
> However, if the metrics are never *unselected* by the user they will remain in this list.
They will also still be in this list if the WebUI can't even display the corresponding job
page anymore, if for example the history size limit was exceeded. They will even survive a
browser restart, since they are not stored in a session-based storage.
> Furthermore, the WebUI still tries to update these metricsd, adding additional overhead
to the WebBackend and potentially network.
> In other words, if you _ever_ checked out metrics tab for some job, chances are that
the next time you start the WebInterface it will still try to update the metrics for it.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Mime
View raw message