Spark: Add support for 4.2.0#14984
Conversation
0d5d05d to
330955b
Compare
bd2bff7 to
af86915
Compare
|
This failure from testing Spark 4.2.0-preview2 is caused by apache/spark#53788, after which an |
af86915 to
a15674c
Compare
|
Failed tests after upgrading to Spark 4.2.0-preview3-rc1
|
|
apache/spark#54884 has been opened to fix the first failure. |
cc08c55 to
cbdcfc9
Compare
|
I will update |
There was a problem hiding this comment.
leave a note here to implement the new method in the Reducer once apache/spark#54884 is in (next Spark 4.2 preview)
Sorry just saw, it is the same comment
b19679d to
d478651
Compare
|
The failed tests in 4.2.0-preview3 have been fixed in 4.2.0-preview4. |
3759e1f to
1db4a96
Compare
The Spark 4.2 version bump (4.2.0.1-4.3.0-0 -> -1) adopts vanilla Apache Spark 4.2.0 APIs, breaking compilation of the v4.2 tree. Port the required changes from apache#14984, scoped to v4.2 only: - Views: migrate ViewCatalog + SupportsReplaceView to TableViewCatalog / ViewInfo across BaseCatalog, SparkCatalog, SparkSessionCatalog and SparkView (now a static ViewInfo converter); add loadTableOrView/commitView; remove SupportsReplaceView. Catalog edits are surgical so the fork's ADH purge directory-delete and existing time-travel code are preserved. - spark-extensions: drop the old Create/Alter view execs, rename Describe/ShowCreate/ShowV2ViewProperties to Iceberg* variants, and update the view analysis/strategy rules to the native DSv2 view API. - Geo: replace GeographyVal/GeometryVal with BinaryView + Geography/Geometry types and getBinaryView in StructInternalRow and SparkParquetReaders. - Add reportDriverMetrics() to StagedSparkTable and RollbackStagedTable (StagedTable/TruncatableTable now declare it). - Netty: Spark 4.2 calls PlatformDependent.hasDirectByteBufferAddress (added in Netty 4.2.12; SPARK-56817 ships 4.2.13) but iceberg-arrow pins 4.2.4. Force netty-buffer/netty-common to 4.2.13 in the Spark 4.2 build only, leaving the shared pin and other Spark versions untouched. - Tests: update TestViews expectations for the new messages and SHOW CREATE output, and override loadTableOrView in TestSparkCatalog.
|
Did we convert this into a draft as we anticipate another RC with changes around view management? |
d42a203 to
e8d1500
Compare
|
@aokolnychyi Nope, I've always kept it as a draft. My plan is to wait for everything being settled at Spark side. Nevertheless, your review and comments are always welcome. |
23b5607 to
7e62f3d
Compare
|
@aokolnychyi I've updated the last commit against latest Spark 4.2 changes. Can you help check whether everything is expected? |
a81b329 to
44ab0cb
Compare
Co-authored-by: Codex <codex@openai.com>
Co-authored-by: Codex <codex@openai.com>
ea9a3c5 to
9457d06
Compare
9ab41be to
e3bb43f
Compare
Add Spark 4.2 module support and include follow-up compatibility fixes for Spark 4.2 view command handling and test expectations. Co-authored-by: Codex <codex@openai.com>
This PR adds support for Apache Spark 4.2.0.
The branch starts with two history-preserving commits that rename the Spark 4.1 module to 4.2 and then restore 4.1 so Git can retain file history. The subsequent commits contain the substantive Spark 4.2 compatibility changes.
Changes
ViewInfo-based APIs and native catalog interfaces.SupportsReplaceViewadapter and routes view creation and replacement through Spark 4.2 catalog APIs.ALTER VIEW SET TBLPROPERTIESusesview.updateProperties().set(...).commit()for Iceberg-backed catalogs instead of replacing the entire view.SparkCatalogerrors for impossible checked-exception branches with operation-specific messages.Verification
TestViewssuite.AI Disclosure