0

Returns error below command using SQL Server Management Studio and SQL Server is running on Ubuntu 18.04.

EXEC sp_execute_external_script
@language = N'Python',
@script =
N'import pandas as pd
InputDataSet.to_csv("/home/dataexport/1.csv")',
@input_data_1 = N'select user_id from test.dbo.[users]'
GO

Error:

Msg 39004, Level 16, State 20, Line 11
A 'Python' script error occurred during execution of 'sp_execute_external_script' with HRESULT 0x80004004.
Msg 39019, Level 16, State 2, Line 11
An external script error occurred: 

Error in execution.  Check the output for more information.
Traceback (most recent call last):
  File "<string>", line 5, in <module>
  File "/var/opt/mssql-extensibility/data/f131c9cc-88b2-4fb0-9611-311e79fe345b/EC1513EA-1DD0-4174-A820-4652B1F4EF6A/sqlindb_0.py", line 30, in transform
    InputDataSet.to_csv("/home/dataexport/1.csv")
  File "/opt/mssql/mlservices/runtime/python/lib/python3.7/site-packages/pandas/core/frame.py", line 1745, in to_csv
    formatter.save()
  File "/opt/mssql/mlservices/runtime/python/lib/python3.7/site-packages/pandas/io/formats/csvs.py", line 156, in save
    compression=self.compression)
  File "/opt/mssql/mlservices/runtime/python/lib/python3.7/site-packages/pandas/io/common.py", line 400, in _get_handle
    f = open(path_or_buf, mode, encoding=encoding)
FileNotFoundError: [Errno 2] No such file or directory: '/home/dataexport/1.csv'

Msg 39019, Level 16, State 2, Line 11
An external script error occurred: 
SqlSatelliteCall error: Error in execution.  Check the output for more information.
STDOUT message(s) from external script: 
SqlSatelliteCall function failed. Please see the console output for more information.
Traceback (most recent call last):
  File "/opt/mssql/mlservices/libraries/PythonServer/revoscalepy/computecontext/RxInSqlServer.py", line 605, in rx_sql_satellite_call
    rx_native_call("SqlSatelliteCall", params)
  File "/opt/mssql/mlservices/libraries/PythonServer/revoscalepy/RxSerializable.py", line 375, in rx_native_call
    ret = px_call(functionname, params)
RuntimeError: revoscalepy function failed.

I have given full permissions on the SQL Server folders that are existing on /opt/ and /var/opt but no luck. even I gave Sudo permissions to users that are running SQL Server and LaunchPad service but didn't work. Even i given full permission on folder path /home/dataexport using chmod -R ugo+rwx /home/dataexport

snakecharmerb
  • 47,570
  • 11
  • 100
  • 153
JERRY
  • 1,165
  • 1
  • 8
  • 22
  • `FileNotFoundError: [Errno 2] No such file or directory: '/home/dataexport/1.csv'` - shouldn't you be giving read permissions on the `/home/dataexport` folder instead? – Roger Wolf Jun 30 '21 at 06:09
  • already permission is given to /home/dataexport. same problem i faced in Windows but resolved with permission to All Application Packages to that folder and SQL Server dir. – JERRY Jun 30 '21 at 06:18
  • Is SQL Server installed on the Ubuntu 18.04 host directly, or is it running inside a Docker container? If it's in a container then have you mapped the container's `/home/dataexport` to the host's `/home/dataexport`? – AlwaysLearning Jun 30 '21 at 06:30
  • Its installed on 18.04, not Dockerize. – JERRY Jun 30 '21 at 06:35

0 Answers0