odbc icon indicating copy to clipboard operation
odbc copied to clipboard

ODBC 1.6.1 incorrectly overwrites a line within simba.sparkodbc.ini with 'libodbcinst.a'

Open chris-beech opened this issue 5 months ago • 0 comments

Upgrading ODBC to 1.6.1 ("odbc will now automatically find statically built installations of unixodbc") causes the error listed here (more detail below), under 'Troubleshooting: Apple macOS users': https://solutions.posit.co/connections/db/databases/databricks/

Following the instructions I edited the following file: /Library/simba/spark/lib/simba.sparkodbc.ini

to include this line: ODBCInstLib=/opt/homebrew/Cellar/unixodbc/2.3.12/lib/libodbcinst.dylib

Upon trying my connection:

con_db <- dbConnect(
  databricks(),
  httpPath = "/sql/1.0/warehouses/12345678910"
)

ODBC 1.6.1 overwrites that line to the following: ODBCInstLib=/opt/homebrew/Cellar/unixodbc/2.3.12/lib/libodbcinst.a

Giving the error:

Error in `dbConnect()`:
! ODBC failed with error 00000 from [Simba][ODBC][Simba][Support].
✖  (11560) Unable to locate SQLGetPrivateProfileString function: (50483) Could not load shared library, all attempted paths ("",
  "/opt/homebrew/Cellar/unixodbc/2.3.12/lib/libodbcinst.a") failed
ℹ From nanodbc/nanodbc.cpp:1150.

Uninstalling 1.6.1, re-installing 1.6.0, and following the instructions fixes the problem and the connection can again be made.

chris-beech avatar May 14 '25 12:05 chris-beech