acoustic-carpenter-78188
03/31/2026, 3:12 AMDuckDBConfig(database_path=...)
• Parameterized SQL queries with typed inputs
• Extension installation and loading (httpfs, json, spatial, etc.)
• Query results returned as pandas DataFrames via temporary parquet files
• Automatic cleanup of temporary result files on delete
Design
Unlike Snowflake/BigQuery, DuckDB runs locally with no remote service, so the connector pattern is adapted:
• Queries execute synchronously in create() (wrapped in run_in_executor for async compat)
• get() always returns SUCCEEDED since queries complete in create()
• delete() cleans up temporary parquet result files
• No credentials, polling, or dashboard links needed
Test plan
• 25 unit tests covering task creation, config serialization, SQL generation, connector create/get/delete, parameterized queries, extensions, and end-to-end flow
• All tests pass (pytest plugins/duckdb/tests/ -v)
• Linting passes (ruff check plugins/duckdb/)
• Plugin structure matches Snowflake plugin layout
flyteorg/flyte-sdkacoustic-carpenter-78188
03/31/2026, 3:12 AM