apache / apache/datafusion-comet
AbstractMethodError: CometBroadcastExchangeExec missing sparkContext() from BroadcastExchangeLike
- Dominant language
- Scala
- Stars
- 1.3k
- Forks
- 373
- Avg merge
- 2d 4h
- Merged PRs (30d)
- 198
Description
### Describe the bug
When using Apache Comet 0.16 with Spark 3.5.6, queries that involve a broadcast exchange fail with:
```
java.lang.AbstractMethodError: Receiver class org.apache.spark.sql.comet.CometBroadcastExchangeExec
does not define or inherit an implementation of the resolved method
'abstract org.apache.spark.SparkContext org$apache$spark$sql$execution$exchange$BroadcastExchangeLike$$super$sparkContext()'
of interface org.apache.spark.sql.execution.exchange.BroadcastExchangeLike.
```
### Steps to reproduce
1. Use Apache Comet 0.16 with Spark 3.5.6
2. Run a query that triggers a broadcast join / `CometBroadcastExchangeExec`
### Expected behavior
`CometBroadcastExchangeExec` should correctly implement (or inherit) the `sparkContext()` method required by the `BroadcastExchangeLike` interface, and the query should execute successfully.
### Additional context
Reported in [apache/datafusion-comet#4125](https://github.com/apache/datafusion-comet/issues/4125#issuecomment-4431270259) alongside an unrelated Iceberg scan error. The original issue (reflection failure with AWS Glue) was resolved by the fix in #3895 (released in 0.16), but this new error surfaced afterward.
Contributor guide
Assessment
This issue has not been assessed yet.