【问题标题】:cluster.cpython-34m.so: undefined symbol: PyException_Check [duplicate]cluster.cpython-34m.so:未定义符号:PyException_Check [重复]
【发布时间】:2017-03-08 13:24:03
【问题描述】:

我在 amazon linux 上运行一个简单的 python(3.4.3) 烧瓶应用程序,它使用 datastax cassandra-driver(3.6)。我的应用程序无法导入模块。

Traceback (most recent call last):
  File "application.py", line 12, in <module>
    from cassandra.cluster import Cluster
ImportError: /opt/python/run/venv/local/lib64/python3.4/site-packages/cassandra/cluster.cpython-34m.so: undefined symbol: PyException_Check
(venv)[ec2-user@ip-1-1-1-1 app]$ uname -a
Linux ip-1-1-1-1 4.4.15-25.57.amzn1.x86_64 #1 SMP Wed Jul 27 22:37:49 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux

Other Packages installed:
$ pip freeze
cassandra-driver==3.6.0
click==6.6
Flask==0.11
itsdangerous==0.24
Jinja2==2.8
MarkupSafe==0.23
six==1.10.0
Werkzeug==0.11.11
xmltodict==0.10.2

【问题讨论】:

标签: python-3.x cassandra amazon-elastic-beanstalk datastax


【解决方案1】:

今天发布的最新版 Cython (0.25) 破坏了 cassandra-driver。

解决此问题的方法是在安装 cassandra-driver 之前安装 Cython==0.24.1。

(env) $ pip install Cython==0.24.1 (env) $ pip install cassandra-driver

您可能需要先从站点包中删除现有的 cassandra-driver 包:

rm -r $WHERE_PYTHON_IS_INSTALLED/lib/python2.7/site-packages/cassandra*

更多信息请参见https://datastax-oss.atlassian.net/browse/PYTHON-656

【讨论】:

  • 嗨,Menth,解决方法解决了这个问题。但是我遇到了新的错误。碰巧这有关系吗? [Wed Oct 26 16:04:00.590289 2016] [:error] [pid 29365] [remote 1.1.1.1:62755] raise CQLEngineException("%s.cluster 未配置。首先调用设置或默认函数之一。 " % name) [Wed Oct 26 16:04:00.590311 2016] [:error] [pid 29365] [remote 1.1.1.1:62755] cassandra.cqlengine.CQLEngineException: cassandra.cqlengine.connection。集群未配置。首先调用其中一个设置或默认函数。
  • VaibhavJain:我以前没有见过这个错误。您是否忘记实际调用设置功能?试试这个:from cqlengine import connection connection.setup(['127.0.0.1'], "cqlengine")
  • Menth,看起来像其他一些问题。我可以从 shell 连接到 cassandra,但不知何故我在 aws bs 上的应用程序抛出了这个错误。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2017-05-28
  • 2011-09-30
  • 2012-10-07
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多