Skip to content

connect requires permissions to system /root directory, preventing usage when this directory is not available #2929

@afeldman1

Description

@afeldman1

What happened?

connect() requires permissions to system /root directory, preventing usage when this directory is not available. The same code works when running on a system that allows permission to this directory. The use case here is that AWS lambda only allows access to the /tmp directory during runtime.

Error produced:
level=error msg="Failed to initialize Easy Logging, err: error while searching for client config in directory: /root, err: stat /root/sf_client_config.json: permission denied" func="gosnowflake.(*defaultLogger).Errorf" file="log.go:216"

Stack Trace

conn = adbc_driver_snowflake.dbapi.connect(snowflake_con_uri)\n           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n  File "/var/lang/lib/python3.12/site-packages/adbc_driver_snowflake/dbapi.py", line 120, in connect\n    conn = adbc_driver_manager.AdbcConnection(db, **(conn_kwargs or 
{}
))\n           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n  File "adbc_driver_manager/_lib.pyx", line 720, in adbc_driver_manager._lib.AdbcConnection.__init__\n  File "adbc_driver_manager/_lib.pyx", line 260, in adbc_driver_manager._lib.check_error\nadbc_driver_manager.OperationalError: IO: 260012: client configuration failed: error while searching for client config in directory: /root, err: stat /root/sf_client_config.json: permission denied

How can we reproduce the bug?

snowflake_con_uri = f"{snowflake_user}:{snowflake_password}@{snowflake_account}/{snowflake_database}?warehouse={snowflake_warehouse}&role={snowflake_role}"

conn = adbc_driver_snowflake.dbapi.connect(snowflake_con_uri)

Environment/Setup

Platform: Linux-5.10.236-249.934.amzn2.x86_64-x86_64-with-glibc2.34
Python: 3.12.9 (main, Apr 9 2025, 10:25:36) [GCC 11.5.0 20240719 (Red Hat 11.5.0-5)]

polars: 1.30.0
adbc_driver_manager 1.6.0
boto3 1.37.3
connectorx 0.4.3
fsspec 2025.2.0
numpy 2.2.6
pandas 2.2.3
pyarrow 20.0.0
pydantic 2.11.5
pyiceberg 0.9.1

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type: bugSomething isn't working

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions