импортировать проблемы с pyarrow PlasmaStoreFull - PullRequest
0 голосов
/ 06 октября 2019

Я получаю 'не могу импортировать имя PlasmaStoreFull из pyarrow.lib' при попытке запустить какую-либо работу с использованием pandaralell из python3.7. Я попытался удалить / переустановить pyarrow, который, кажется, импортирует нормально. Я не нашел ссылку на эту конкретную ситуацию здесь или в общем поиске Google.

(p37) jeremyr@bolt:$ pip3 uninstall pyarrow 
Uninstalling pyarrow-0.15.0:
  Would remove:
    /home/jeremyr/p37/bin/plasma_store
    /home/jeremyr/p37/lib/python3.7/site-packages/pyarrow-0.15.0.dist-info/*
    /home/jeremyr/p37/lib/python3.7/site-packages/pyarrow/*
Proceed (y/n)? y
  Successfully uninstalled pyarrow-0.15.0
(p37) jeremyr@bolt:$ pip3 install pyarrow
Collecting pyarrow
  Using cached https://files.pythonhosted.org/packages/02/61/62a74c9ca255dbe8cdff62ea1e9c8f0007f7ce809fccc02d7bf95dd19313/pyarrow-0.15.0-cp37-cp37m-manylinux2010_x86_64.whl
Requirement already satisfied: six>=1.0.0 in /home/jeremyr/p37/lib/python3.7/site-packages (from pyarrow) (1.12.0)
Requirement already satisfied: numpy>=1.14 in /home/jeremyr/p37/lib/python3.7/site-packages (from pyarrow) (1.17.2)
Installing collected packages: pyarrow
Successfully installed pyarrow-0.15.0
(p37) jeremyr@bolt:$ ipython 
Python 3.7.0 (default, Sep 23 2019, 10:05:28) 
Type 'copyright', 'credits' or 'license' for more information
IPython 7.8.0 -- An enhanced Interactive Python. Type '?' for help.

In [1]: import pyarrow                                                                                                                          

In [2]: pyarrow.__version__                                                                                                                     
Out[2]: '0.15.0'

In [3]: from pyarrow.lib import PlasmaStoreFull                                                                                                 
---------------------------------------------------------------------------
ImportError                               Traceback (most recent call last)
<ipython-input-3-c640508e3f5e> in <module>
----> 1 from pyarrow.lib import PlasmaStoreFull

ImportError: cannot import name 'PlasmaStoreFull' from 'pyarrow.lib' (/home/jeremyr/p37/lib/python3.7/site-packages/pyarrow/lib.cpython-37m-x86_64-linux-gnu.so)

1 Ответ

0 голосов
/ 07 октября 2019

Похоже, что PlasmaStoreFull перемещен в pyarrow.plasma в v0.15 из pyarrow.lib в v0.14 - в нужное время правильно делает следующее

try:
    # Pyarrow version > 0.14
    from pyarrow.plasma import PlasmaStoreFull as _PlasmaStoreFull
except ImportError:
    # Pyarrow version <= 0.14
    from pyarrow.lib import PlasmaStoreFull as _PlasmaStoreFull

см. это исправление

...