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]