aglinxinyuan opened a new pull request, #6209:
URL: https://github.com/apache/texera/pull/6209

   ### What changes were proposed in this PR?
   
   `computing-unit-managing-service` crashes at startup on `main` (since #6185, 
the Arrow 19 upgrade) with:
   
   ```
   Exception in thread "main" 
com.fasterxml.jackson.databind.JsonMappingException:
     Scala module 2.18.8 requires Jackson Databind version >= 2.18.0 and < 
2.19.0
     - Found jackson-databind version 2.21.0
       at com.fasterxml.jackson.module.scala.JacksonModule.setupModule
       at org.apache.texera.service.ComputingUnitManagingService.initialize
   ```
   
   **Root cause.** #6185 counters Arrow 19 evicting `jackson-databind` up to 
`2.21.0` (past the range `jackson-module-scala` allows) by pinning the Jackson 
core family — in `workflow-core`/`workflow-operator`, and by pinning 
`jackson-databind` directly in `file-service` and `workflow-compiling-service`. 
`ComputingUnitManagingService` was the one Arrow-bundling service left 
overriding **only** `jackson-module-scala`, so nothing held `jackson-databind` 
down. Its dist bundled `jackson-databind-2.21.0.jar` next to 
`jackson-module-scala_2.13-2.18.8.jar` and aborted at init.
   
   **Before → after** (resolved `Runtime/managedClasspath` of 
`ComputingUnitManagingService`):
   
   | artifact | before | after |
   | --- | --- | --- |
   | jackson-annotations | 2.21 | 2.21 |
   | jackson-core | 2.21.0 | 2.21.0 |
   | **jackson-databind** | **2.21.0** ❌ | **2.18.8** ✅ |
   
   The fix mirrors `file-service` / `workflow-compiling-service` exactly: add 
`"com.fasterxml.jackson.core" % "jackson-databind" % jacksonVersion` to the 
module's `dependencyOverrides`, and re-sync the one drifted line in 
`computing-unit-managing-service/LICENSE-binary` (`2.21.0` → `2.18.8`). 
`NOTICE-binary` is version-less by design (the generator strips versions so 
routine bumps don't churn it) and the jar *set* is unchanged, so it needs no 
edit.
   
   ### Any related issues, documentation, discussions?
   
   Fixes #6206. Follow-up to #6185.
   
   ### How was this PR tested?
   
   Reproduced the CI binary-license check locally against the module's resolved 
runtime classpath (per the repo's `check_binary_deps.py` recipe):
   
   - `sbt "print ComputingUnitManagingService/Runtime/managedClasspath"` now 
resolves `jackson-databind-2.18.8.jar` (was `2.21.0`) — the only delta; no 
other dep drifted.
   - `check_binary_deps.py jar <staged-lib> --license-binary 
computing-unit-managing-service/LICENSE-binary` → `OK: 339 JVM jars match 
LICENSE-binary.`
   
   ### Was this PR authored or co-authored using generative AI tooling?
   
   Generated-by: Claude Code (Opus 4.8 [1M context])


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to