Apache DataFusion Comet 0.12.0 Release

Posted on: Thu 04 December 2025 by pmc

The Apache DataFusion PMC is pleased to announce version 0.12.0 of the Comet subproject.

Comet is an accelerator for Apache Spark that translates Spark physical plans to DataFusion physical plans for improved performance and efficiency without requiring any code changes.

This release covers approximately four weeks of development work and is the result of merging 105 PRs from 13 contributors. See the change log for more information.

Release Highlights

Experimental Native Apache Iceberg Scan Support

Comet has a new, experimental, native Iceberg scan. This work relies on iceberg-rust and the Parquet reader from arrow-rs that Comet already uses to great effect. Comet’s existing Iceberg integration relies on a modified Iceberg Java build to accelerate Parquet decoding. This new approach allows unmodified Iceberg Java to handle query planning (i.e., catalog access, partition pruning, etc.), then Comet serializes Iceberg FileScanTask objects directly to iceberg-rust, enabling native execution of Iceberg table scans through DataFusion.

This represents a significant step forward in Comet's support for data lakehouse architectures and expands the range of workloads that can benefit from native acceleration. Please take a look at the PR and Comet’s documentation to understand the current limitations and try it on your workloads! We are eager for feedback on this approach.

Code Architecture Improvements

This release includes significant refactoring to improve code maintainability and extensibility, and we will continue those efforts into 0.13.0 development:

These architectural improvements make it easier for contributors to add new operators and expressions while reducing code complexity.

New SQL Functions

The following SQL functions are now supported:

New Operators

  • CometLocalTableScanExec - Native support for local table scans, eliminating fallback to Spark for small, in-memory datasets

Configuration and Usability Improvements

Bug Fixes

This release includes numerous bug fixes:

Documentation Improvements

Dependency Updates

Spark Compatibility

  • Spark 3.4.3 with JDK 11 & 17, Scala 2.12 & 2.13
  • Spark 3.5.4 through 3.5.7 with JDK 11 & 17, Scala 2.12 & 2.13
  • Spark 4.0.1 with JDK 17, Scala 2.13

We are looking for help from the community to fully support Spark 4.0.1. See EPIC: Support 4.0.0 for more information.

Getting Involved

The Comet project welcomes new contributors. We use the same Slack and Discord channels as the main DataFusion project and have a weekly DataFusion video call.

The easiest way to get involved is to test Comet with your current Spark jobs and file issues for any bugs or performance regressions that you find. See the Getting Started guide for instructions on downloading and installing Comet.

There are also many good first issues waiting for contributions.


Comments