boozallen / aissemble

Booz Allen's lean manufacturing approach for holistically designing, developing and fielding AI solutions across the engineering lifecycle from data processing to model building, tuning, and training to secure operational deployment
Other
34 stars 8 forks source link

Feature: JDK 17 Upgrade Support Series - Spark modules/pipelines #356

Closed cwoods-cpointe closed 1 month ago

cwoods-cpointe commented 2 months ago

Description

In https://github.com/boozallen/aissemble/issues/133 we modified the build-parent to use JDK 17. When building aiSSEMBLE with the updated build-parent, some modules do not build successfully. This is a series of ticket to fix broken modules. This issue will focus on the spark pipeline functionality

DOD

Test Strategy/Script

Test 2 - spark migration

References/Additional Context

None

cwoods-cpointe commented 1 month ago

Ran into a test issue with Spark needing to use an internal API that has been made inaccessible by default:

[ERROR]   Run 1: java.lang.IllegalAccessError: class org.apache.spark.storage.StorageUtils$ (in unnamed module @0x68999068) cannot access class sun.nio.ch.DirectBuffer (in module java.base) because module java.base does not export sun.nio.ch to unnamed module @0x68999068

Resolved by exporting it in the surefire plugin <argLine>--add-exports java.base/sun.nio.ch=ALL-UNNAMED</argLine>

cwoods-cpointe commented 1 month ago

spark/java support matrix shows 3.4.x supports java17 so docker images should be good - link

cwoods-cpointe commented 1 month ago

There is a conflict with our jackson and spark dependencies Scala module 2.14.2 requires Jackson Databind version >= 2.14.0 and < 2.15.0 - Found jackson-databind version 2.15.0. To mitigate this, we should try and bump up our spark version

colinpalmer-pro commented 1 month ago

Test Steps passed. Ticket Resolved.