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

Build a jar-with-dependencies for flink-table and put it into ./opt

    Details

    • Type: Improvement
    • Status: Closed
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: 1.3.0
    • Fix Version/s: 1.3.0
    • Labels:
      None

      Description

      Due to a problem with Calcite and the unloading of classes, user-code classloaders that include Calcite cannot be garbage collected. This is a problem for long-running clusters that execute multiple Table API / SQL programs with fat JARs that include the flink-table dependency. Each executed program comes with an own user-code classloader that cannot be cleaned up later.

      As a workaround, we recommend to copy the flink-table dependency into the ./lib folder. However, we do not have a jar file with all required transitive dependencies (Calcite, Janino, etc). Hence, users would need to build this jar file themselves or copy all jars into ./lib.

      This issue is about creating a jar-with-dependencies and adding it to the ./opt folder. Users can then copy the jar file from ./opt to ./lib to include the table API in the classpath of Flink.

        Attachments

          Issue Links

            Activity

              People

              • Assignee:
                sunjincheng121 sunjincheng
                Reporter:
                fhueske Fabian Hueske
              • Votes:
                1 Vote for this issue
                Watchers:
                3 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: