Uploaded image for project: 'Apache Arrow'
  1. Apache Arrow
  2. ARROW-1554

[Python] Document that pip wheels depend on MSVC14 runtime

    XMLWordPrintableJSON

    Details

    • Type: Bug
    • Status: Resolved
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: 0.7.0
    • Fix Version/s: 0.7.1
    • Component/s: Python
    • Environment:
      Windows 10 (x64)
      Python 3.6.2 (x64)

      Description

      I just tried pyarrow on Windows 10, and it fails to import for me:

      >>> import pyarrow
      Traceback (most recent call last):
        File "<stdin>", line 1, in <module>
        File "C:\Program Files\Python36\lib\site-packages\pyarrow\__init__.py", line 32, in <module>
          from pyarrow.lib import cpu_count, set_cpu_count
      ImportError: DLL load failed: The specified module could not be found.
      

      Not sure which DLL is failing, but I do see some DLLs in the pyarrow folder:

      C:\Users\dima\Documents>dir "C:\Program Files\Python36\lib\site-packages\pyarrow\"
       Volume in drive C has no label.
       Volume Serial Number is 4CE9-CC3C
      
       Directory of C:\Program Files\Python36\lib\site-packages\pyarrow
      
      09/19/2017  01:14 AM    <DIR>          .
      09/19/2017  01:14 AM    <DIR>          ..
      09/19/2017  01:14 AM         2,382,336 arrow.dll
      09/19/2017  01:14 AM           604,160 arrow_python.dll
      09/19/2017  01:14 AM             3,402 compat.py
      ...
      

      However, I cannot open them using ctypes.cdll. I wonder if some dependency is missing?

      >>> open('C:\\Program Files\\Python36\\Lib\\site-packages\\pyarrow\\parquet.dll', 'rb')
      <_io.BufferedReader name='C:\\Program Files\\Python36\\Lib\\site-packages\\pyarrow\\parquet.dll'>
      >>>
      >>> cdll.LoadLibrary('C:\\Program Files\\Python36\\Lib\\site-packages\\pyarrow\\parquet.dll')
      Traceback (most recent call last):
        File "<stdin>", line 1, in <module>
        File "C:\Program Files\Python36\lib\ctypes\__init__.py", line 426, in LoadLibrary
          return self._dlltype(name)
        File "C:\Program Files\Python36\lib\ctypes\__init__.py", line 348, in __init__
          self._handle = _dlopen(self._name, mode)
      OSError: [WinError 126] The specified module could not be found
      

        Attachments

        1. parquet_dependencies.png
          24 kB
          Wes McKinney
        2. Process Monitor.png
          176 kB
          Dima Ryazanov

          Issue Links

            Activity

              People

              • Assignee:
                wesmckinn Wes McKinney
                Reporter:
                dimaryaz Dima Ryazanov
              • Votes:
                0 Vote for this issue
                Watchers:
                3 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: