Uploaded image for project: 'Flink'
  1. Flink
  2. FLINK-13749

Make Flink client respect classloading policy

    XMLWordPrintableJSON

Details

    • Hide
      The Flink client now also respects the configured classloading policy, i.e. parent-first or child-first classloading. Previously only cluster components such as the job manager or task manager supported this setting.

      This does mean that users might get different behaviour in their programs, in which case they should configure the classloading policy explicity to use parent-first classloading, which was the previous (hard-coded) behaviour.
      Show
      The Flink client now also respects the configured classloading policy, i.e. parent-first or child-first classloading. Previously only cluster components such as the job manager or task manager supported this setting. This does mean that users might get different behaviour in their programs, in which case they should configure the classloading policy explicity to use parent-first classloading, which was the previous (hard-coded) behaviour.

    Description

      Currently, Flink client does not respect the classloading policy and uses hardcoded parent-first classloader, while the other components like jobmanager and taskmanager use child-first classloader by default and respect the classloading options. This makes the client more likely to have dependency conflicts, especially after we removed the convenient hadoop binaries (so users need to add hadoop classpath in the client classpath).

      So I propose to make Flink client's (including cli and rest handler) classloading behavior aligned with the other components.

      Attachments

        Issue Links

          Activity

            People

              Paul Lin Paul Lin
              Paul Lin Paul Lin
              Votes:
              0 Vote for this issue
              Watchers:
              9 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:

                Time Tracking

                  Estimated:
                  Original Estimate - Not Specified
                  Not Specified
                  Remaining:
                  Remaining Estimate - 0h
                  0h
                  Logged:
                  Time Spent - 20m
                  20m