Skip to content

Conversation

Weijun-H
Copy link
Member

@Weijun-H Weijun-H commented Oct 9, 2025

Which issue does this PR close?

Rationale for this change

Expose TableProviderFactory via FFI to enable external languages (e.g., Python) to implement custom table provider factories and extend DataFusion with new data source types.

What changes are included in this PR?

  • Added datafusion/ffi/src/table_provider_factory.rs with:
    • FFI_TableProviderFactory: Stable C ABI struct with function pointers for create, clone, release, and version
    • ForeignTableProviderFactory: Wrapper implementing TableProviderFactory trait

Are these changes tested?

Yes

Are there any user-facing changes?

Yes - new FFI API that enables custom TableProviderFactory implementations in foreign languages. This is an additive change with no breaking changes to existing APIs.

@github-actions github-actions bot added the ffi Changes to the ffi crate label Oct 9, 2025
@Weijun-H Weijun-H requested a review from timsaucer October 9, 2025 13:07
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

ffi Changes to the ffi crate

Projects

None yet

Development

Successfully merging this pull request may close these issues.

expose TableProviderFactory via FFI

1 participant