You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@flink.apache.org by "James Z.M. Gao (Jira)" <ji...@apache.org> on 2022/12/12 15:57:00 UTC

[jira] [Created] (FLINK-30387) support job singleton within TM

James Z.M. Gao created FLINK-30387:
--------------------------------------

             Summary: support job singleton within TM
                 Key: FLINK-30387
                 URL: https://issues.apache.org/jira/browse/FLINK-30387
             Project: Flink
          Issue Type: New Feature
          Components: API / Core
            Reporter: James Z.M. Gao


For better managing some shared objects between slots of the same job, such as thread pool, db connections, cache data, etc., we need the ability to create these objects once for each job at the beginning, then to release the bounded resource when the job finished some how with correct order. A simple static filed cannot always archive this when the class is loaded by the TM classloader.

To implement this job level singleton, we can use the flink user classloader. Since each flink job has its own context class loader, we could add some methods to operate the user CL to create a user specify AutoCloseable object only once for each job and close it at last in release hook of the user CL.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)