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

flink-python build fails with No module named pkg_resources

    XMLWordPrintableJSON

Details

    Description

      Benchmark builds started to fail with

      [INFO] Adding generated sources (java): /home/jenkins/workspace/flink-master-benchmarks/flink/flink-python/target/generated-sources
      [INFO] 
      [INFO] --- exec-maven-plugin:1.5.0:exec (Protos Generation) @ flink-python_2.11 ---
      Traceback (most recent call last):
        File "/home/jenkins/workspace/flink-master-benchmarks/flink/flink-python/pyflink/gen_protos.py", line 33, in <module>
          import pkg_resources
      ImportError: No module named pkg_resources
      [ERROR] Command execution failed.
      (...)
      [INFO] flink-state-processor-api .......................... SUCCESS [  0.299 s]
      [INFO] flink-python ....................................... FAILURE [  0.434 s]
      [INFO] flink-scala-shell .................................. SKIPPED
      

      because of this ticket: https://issues.apache.org/jira/browse/FLINK-14018

      I think I can solve the benchmark builds failing quite easily by installing setuptools python package, so this ticket is not about this, but about deciding how should we treat such kind of external dependencies. I don't see this dependency being mentioned anywhere in the documentation (for example here).

      Probably at the very least those external dependencies should be documented, but also I fear about such kind of manual steps to do before building the Flink can become a problem if grow out of control. Some questions:

      1. Do we really need this dependency?
      2. Could this dependency be resolve automatically? By installing into a local python virtual environment?
      3. Should we document those dependencies somewhere?
      4. Maybe we should not build flink-python by default?
      5. Maybe we should add a pre-build script for flink-python to verify the dependencies and to throw an easy to understand error with hint how to fix it?

      CC hequn dian.fu trohrmann jincheng

      Attachments

        Issue Links

          Activity

            People

              dianfu Dian Fu
              pnowojski Piotr Nowojski
              Votes:
              0 Vote for this issue
              Watchers:
              5 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