jianyexi opened a new issue, #12951:
URL: https://github.com/apache/gluten/issues/12951
### Backend
VL (Velox)
### Bug description
**Expected behavior:** Installing `backends-velox` with a Spark 4.x profile
should publish dependency metadata containing that profile's resolved Arrow
version and scopes. A later module-only build should therefore resolve one
consistent Arrow version.
**Actual behavior:** The installed `backends-velox` POM retains
`${arrow.version}`. When a consumer runs outside the original Maven reactor,
Maven resolves that property from the parent default (`15.0.0`) even though
Spark 4.0 and 4.1 select Arrow `18.1.0` and `18.3.0`, respectively. This can
mix Arrow 15 and 18 artifacts on the test classpath.
A Spark 4.1 module-only test then fails with:
```text
java.lang.NoClassDefFoundError:
org/apache/arrow/vector/types/pojo/ArrowType$Utf8View
```
Reproduction:
1. Install Gluten with the Velox, Spark 4.1, Java 17, and Scala 2.13
profiles.
2. In a subsequent Maven invocation, run only the Spark 4.1 unit-test module
without `-am`, so Maven consumes the installed `backends-velox` POM.
3. Inspect the dependency tree or run tests.
4. Observe `arrow-c-data:18.3.0` alongside `arrow-vector:15.0.0`, followed
by the missing `ArrowType$Utf8View` class.
Running with `-am` masks the problem by keeping `backends-velox` in the
active Spark-profile reactor. The installed and published POM should instead
contain flattened, profile-resolved metadata.
This issue was written with the assistance of GitHub Copilot CLI 1.0.80.
### Gluten version
main branch
### Spark version
Spark-4.0.x and Spark-4.1.x
### Spark configurations
Maven profiles:
```text
-Pbackends-velox -Pspark-4.1 -Pscala-2.13 -Pjava-17
```
The equivalent Spark 4.0 profile is also affected. Spark 3.3–3.5
intentionally use Arrow 15.0.0 and should remain unchanged.
### System information
Reproduced in the local Gluten Linux development container using JDK 17 and
Maven through `./build/mvn`.
### Relevant logs
```text
arrow-c-data:18.3.0
arrow-vector:15.0.0
java.lang.NoClassDefFoundError:
org/apache/arrow/vector/types/pojo/ArrowType$Utf8View
```
A full reactor build with `-am` resolves Arrow 18.3.0 consistently,
confirming that the failure depends on consuming the installed POM.
--
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]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]