github apache/arrow-adbc apache-arrow-adbc-20-rc0
ADBC Libraries apache-arrow-adbc-20-rc0

pre-release23 hours ago

ADBC Libraries 20 (2025-09-09)

Versions

  • C/C++/GLib/Go/Python/Ruby: 1.8.0
  • C#: 0.20.0
  • Java: 0.20.0
  • R: 0.20.0
  • Rust: 0.20.0

Breaking Changes

  • ⚠️ rust: not to mark some enums as non_exhaustive (#3245)
  • ⚠️ rust/core: move the driver_manager feature to the new adbc_driver_manager package (#3197)
  • ⚠️ rust/core: move the ffi related stuff to the new adbc_ffi package (#3381)
  • ⚠️ rust/driver/datafusion: update to datafusion 48 (#3167)

New Features

  • c/driver/postgresql: bind arrow.json to JSON (#3333)
  • c/driver/sqlite, python/adbc_driver_manager: bind params by name (#3362)
  • c/driver_manager: don't ignore invalid manifests (#3399)
  • c/driver_manager: improve error reporting for manifests (#3386)
  • c/driver_manager, rust/driver_manager: add manifest version check (#3393)
  • c/driver_manager, rust/driver_manager: handle virtual environments in driver manager (#3320)
  • csharp/src: Add support for adding and configuring OTel exporters (#2949)
  • csharp/src/Apache.Arrow.Adbc/Tracing: allow ActivitySource tags to be set from TracingConnection (#3218)
  • csharp/src/Drivers: update drivers to .NET 8 (#3120)
  • csharp/src/Drivers/Apache: Add compression support for Spark, Impala & Hive Http Connection (#3127)
  • csharp/src/Drivers/Apache: Enabled Standard protocol for Spark and used SASL transport with basic auth (#3380)
  • csharp/src/Drivers/Apache: Implement protocol fallback mechanism to support old server version of Spark & Hive (#3312)
  • csharp/src/Drivers/Apache: Implement self signed ssl certificate validation for Spark, Impala & Hive (#3224)
  • csharp/src/Drivers/Apache: add env variable config override for databricks (#3304)
  • csharp/src/Drivers/Apache: add support for Statement.Cancel (#3302)
  • csharp/src/Drivers/BigQuery: Enhanced tracing and large resultset improvements (#3022)
  • csharp/src/Drivers/Databricks: Add W3C trace context (#3082)
  • csharp/src/Drivers/Databricks: Fix EnablePkFk (#3098)
  • csharp/src/Drivers/Databricks: Fix StatementTimeoutTest (#3133)
  • csharp/src/Drivers/Databricks: Move DescribeTableExtended to version negotiator (#3137)
  • csharp/src/Drivers/Databricks: Remove redundant CloseOperation for GetColumnsAsync (#3132)
  • csharp/src/Drivers/Databricks: Remove redundant closeoperation (#3093)
  • csharp/src/Drivers/Databricks: Use ArrowSchema for Response Schema (#3140)
  • csharp/test/Drivers/Databricks: Add mandatory token exchange (#3192)
  • csharp/test/Drivers/Databricks: Enable RunAsync option in TExecuteStatementReq (#3171)
  • csharp/test/Drivers/Databricks: Support token refresh to extend connection lifetime (#3177)
  • glib: add AdbcStatementGetParameterSchema() bindings (#3118)
  • go/adbc: add GetDriverInfo helper (#3239)
  • go/adbc: add IngestStream helper for one-call ingestion and add TestIngestStream (#3150)
  • go/adbc/driver/bigquery: Add "adbc.bigquery.sql.location" param (#3280)
  • go/adbc/driver/bigquery: error if we lack readSessionUser (#3297)
  • go/adbc/driver/bigquery: support service account impersonation (#3174)
  • go/adbc/driver/snowflake: Enable PAT and WIF auth (#3366)
  • go/adbc/sqldriver: handle timestamp/time.Time values for input (#3109)
  • java/driver/jni: enable new load flags (#3373)
  • java/driver/jni: implement parameter binding (#3370)
  • java/driver/jni: pass through all initial params (#3372)
  • ruby: don't use adbc-arrow-glib (#3221)
  • rust/core: add function to load driver manifests (#3099)
  • rust/driver/snowflake: add pat and wif auth types (#3376)

Bugfixes

  • c/driver_manager: add drivers subdir in search paths (#3375)
  • c/driver_manager: fix expected ; for musl arch (#3105)
  • c/driver_manager: modify SYSTEM path behavior on macOS (#3250)
  • c/driver_manager: rename ADBC_CONFIG_PATH to ADBC_DRIVER_PATH (#3379)
  • c/driver_manager: use Driver.entrypoint as per docs (#3242)
  • c/driver_manager, rust/driver_manager: establish standard platform tuples (#3313)
  • csharp/src/Apache.Arrow.Adbc/C: Stop trying to unload dynamic libraries (#3291)
  • csharp/src/Drivers: Fix cloud fetch cancel/timeout mechnism (#3285)
  • csharp/src/Drivers/Apache: generate type-consistent empty result for GetColumnsExtended query (#3096)
  • csharp/src/Drivers/Apache/Hive2: Remove unnecessary CloseOperation in Statement.Dispose when query is metadata query (#3189)
  • csharp/src/Drivers/Apache/Hive2: add check to see if operation is already closed (#3301)
  • csharp/src/Drivers/Apache/Spark: fix column metadata index offset for Spark standard (#3392)
  • csharp/src/Drivers/BigQuery: Adjust default dataset id (#3187)
  • csharp/src/Drivers/BigQuery: Include try/catch for InvalidOperationException in ReadRowsStream (#3361)
  • csharp/src/Drivers/BigQuery: Modify ReadChunk behavior (#3323)
  • csharp/src/Drivers/BigQuery: add details for retried error message (#3244)
  • csharp/src/Drivers/Databricks: Add another fallback check of GetColumnsExtendedAsync (#3219)
  • csharp/src/Drivers/Databricks: Add instructions about driver config setup (#3367)
  • csharp/src/Drivers/Databricks: Change fallback check of Databricks.GetColumnsExtendedAsync (#3121)
  • csharp/src/Drivers/Databricks: Correct DatabricksCompositeReader and StatusPoller to Stop/Dispose Appropriately (#3217)
  • csharp/src/Drivers/Databricks: DatabricksCompositeReader unit tests (#3265)
  • csharp/src/Drivers/Databricks: Fix Databricks readme (#3365)
  • csharp/src/Drivers/Databricks: Fix null pointer exception (#3261)
  • csharp/src/Drivers/Databricks: PECO-2562 Use "default" schema in open session request (#3359)
  • csharp/src/Drivers/Databricks: Reader Refactors (#3254)
  • csharp/src/Drivers/Databricks: Set GetObjectsPatternsRequireLowerCase true (#3131)
  • csharp/src/Drivers/Databricks: Set enable_run_async_thrift default true (#3232)
  • csharp/src/Drivers/Databricks: Set the SqlState of the exception in RetryHttpHandler (#3092)
  • csharp/src/Drivers/Databricks: Use default result persistence mode (#3203)
  • csharp/src/Drivers/Databricks: [PECO-2396] Fix timestamp for dbr 6.6 - Set timestamp configuration on OpenSessionReq (#3327)
  • csharp/src/Drivers/Databricks: correct tracing instrumentation for assembly name and version (#3170)
  • csharp/src/Drivers/Databricks: fix CloudFetchResultFetcher initial results processing logic (#3097)
  • csharp/test/Drivers: Fix databricks tests (#3358)
  • csharp/test/Drivers/Databricks: Change the default QueryTimeoutSeconds to 3 hours (#3175)
  • csharp/test/Drivers/Databricks: Enrich RetryHttpHandler with other status codes (#3186)
  • csharp/test/Drivers/Databricks: Fix Pkfk Testcase (#3193)
  • csharp/test/Drivers/Databricks: Run token exchange in a background task (#3188)
  • go/adbc: Forward SQLSTATE and vendor code (#2801)
  • go/adbc: changing the location of FlightSQLDriverInit function (#3079)
  • go/adbc/driver/bigquery: accept old auth option value (#3317)
  • go/adbc/driver/bigquery: fix parsing repeated records with nested fields (#3240)
  • go/adbc/driver/bigquery: fix timestamp arrow type to use micro seconds (#3364)
  • go/adbc/driver/snowflake: fix unit tests (#3377)
  • go/adbc/drivermgr: properly vendor toml++ (#3138)
  • go/adbc/pkg: Run make regenerate to keep generated code in sync with templates (#3202)
  • go/adbc/pkg: add PowerShell option to run when executing in a Windows-based ADO pipeline (#3124)
  • java/driver/jni: update AdbcDriverFactory metadata (#3348)
  • python/adbc_driver_bigquery: correct string value of credential enum (#3091)
  • python/adbc_driver_manager: handle empty params in executemany (#3332)
  • python/adbc_driver_manager: mark calls with nogil (#3321)
  • rust/core: fix build errror on windows and enable ci for windows (#3148)
  • rust/driver_manager: modify SYSTEM path behavior on macOS (#3252)

Documentation Improvements

  • Fix pip install command for arrow-adbc-nightlies (#3222)
  • add Snowflake and BigQuery drivers to Python API reference (#3088)
  • add docs for driver manifests (#3176)
  • clarify relationship specification.rst to adbc.h (#3226)
  • consistent use of pushd instead of cd in the contributing guide (#3089)
  • fix invalid link in snowflake docs (#3246)
  • fix safari rendering in manifest_load.mmd diagram (#3391)
  • fix typo in python/adbc_driver_postgresql/README.md (#3194)
  • generate driver status from README badges (#2890)
  • improve go docs by adding a readme (#3204)
  • link to AdbcDriverInitFunc in how_manager.rst (#3227)
  • minor edits for first version of driver manager docs (#3180)
  • minor improvements to driver_manifests.rst (#3394)
  • organize Documentation steps of CONTRIBUTING.md (#3100)
  • rework driver manager references across docs (#3388)
  • rust/core: add simple usage of Driver Manager (#3086)

Don't miss a new arrow-adbc release

NewReleases is sending notifications on new releases.