[ https://issues.apache.org/jira/browse/KUDU-3604?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17882483#comment-17882483 ]
Marton Greber commented on KUDU-3604: ------------------------------------- After doing some RCA, it looks like just execuint pip install cython before pip installing Kudu is not a good idea. We probably need to take a closer look at what changed in Cython 3.x, however it is breaking setup.py. What we need to do, is pin down a version prior to 3.x > Fix Kudu Python PyPi installation > --------------------------------- > > Key: KUDU-3604 > URL: https://issues.apache.org/jira/browse/KUDU-3604 > Project: Kudu > Issue Type: Improvement > Reporter: Marton Greber > Assignee: Marton Greber > Priority: Major > > Currently if installing Kudu from PyPi the following error is thrown: > Ubuntu18 x86_64: > {code:java} > kudu/client.pyx:3453:16: 'KuduRangePartition' is not a type identifier > > Error compiling Cython file: > ------------------------------------------------------------ > ... > if not isinstance(range_partition.upper_bound, PartialRow): > upper_bound = > self._table.schema.new_row(range_partition.upper_bound) > else: > upper_bound = range_partition.upper_bound > upper_bound._own = 0 > p = new KuduRangePartition( > ^ > ------------------------------------------------------------ > > kudu/client.pyx:3453:12: new operator can only be applied to a C++ class > Compiling kudu/client.pyx because it changed. > Compiling kudu/errors.pyx because it changed. > Compiling kudu/schema.pyx because it changed. > [1/3] Cythonizing kudu/client.pyx > Traceback (most recent call last): > File "<string>", line 1, in <module> > File "/tmp/pip-install-ACxkFy/kudu-python/setup.py", line 159, in > <module> > extensions = cythonize(extensions) > File > "/usr/local/lib/python2.7/dist-packages/Cython/Build/Dependencies.py", line > 1154, in cythonize > cythonize_one(*args) > File > "/usr/local/lib/python2.7/dist-packages/Cython/Build/Dependencies.py", line > 1321, in cythonize_one > raise CompileError(None, pyx_file) > Cython.Compiler.Errors.CompileError: kudu/client.pyx > ---------------------------------------- > ERROR: Command errored out with exit status 1: python setup.py egg_info Check > the logs for full command output. > {code} > The solution is to go into the Kudu Python source folder and install the > requirements file. This shouldn't be necessary. -- This message was sent by Atlassian Jira (v8.20.10#820010)