Skip to content

deltalake-python: Missing support for adding new factories and logstores #2818

Open
@MartinKolbAtWork

Description

@MartinKolbAtWork

Description

The Python binding has a hard-coded list of deltalake handlers that are registered:

delta-rs/python/src/lib.rs

Lines 2035 to 2039 in fcd62ab

deltalake::aws::register_handlers(None);
deltalake::azure::register_handlers(None);
deltalake::gcp::register_handlers(None);
deltalake::hdfs::register_handlers(None);
deltalake_mount::register_handlers(None);

To add support for another object store (SAP BTP) we have a Rust crate available, we did not find a way to register these handlers onto the already existing Python binding.
The shared library that comes with deltalake-python does not expose an entry point for adding new object stores.
We ended up in forking delta-rs and adding the registration call as another line in the list above. But we don’t think using a fork to add an additional object store is an appropriate approach.

Have we missed something here? Shouldn’t there be a way to add additional stores in addition to the 5 existing ones?

Metadata

Metadata

Assignees

No one assigned

    Labels

    binding/pythonIssues for the Python packageenhancementNew feature or request

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions