You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@flink.apache.org by "Till Rohrmann (Jira)" <ji...@apache.org> on 2020/05/07 13:31:00 UTC

[jira] [Resolved] (FLINK-16408) Bind user code class loader to lifetime of a slot

     [ https://issues.apache.org/jira/browse/FLINK-16408?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Till Rohrmann resolved FLINK-16408.
-----------------------------------
    Release Note: The user code class loader is being reused by the `TaskExecutor` as long as there is at least a single slot allocated for the respective job. This changes Flink's recovery behaviour slightly so that it will not reload static fields. The benefit is that this change drastically reduces pressure on the JVM's metaspace.
      Resolution: Fixed

Fixed via 

154a13bf9131268040f02402cd0d12c11565de58
92ef0ce03ce4656b33a91405f9e2b91c712446f7
11f5c7fafea649e429022576becb35f871471587
7f503f21d27a31a02c7577fa3d39d27dc4e181c6
ceca1d2a8b1706e7cf7b5ab22ef0a2f15106c46b
970862a879d41acfec5ba985d87b7fd01b44b5d3

> Bind user code class loader to lifetime of a slot
> -------------------------------------------------
>
>                 Key: FLINK-16408
>                 URL: https://issues.apache.org/jira/browse/FLINK-16408
>             Project: Flink
>          Issue Type: Improvement
>          Components: Runtime / Coordination
>    Affects Versions: 1.9.2, 1.10.0
>            Reporter: Till Rohrmann
>            Assignee: Till Rohrmann
>            Priority: Critical
>              Labels: pull-request-available
>             Fix For: 1.11.0
>
>
> In order to avoid class leaks due to creating multiple user code class loaders and loading class multiple times in a recovery case, I would suggest to bind the lifetime of a user code class loader to the lifetime of a slot. More precisely, the user code class loader should live at most as long as the slot which is using it.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)