You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by gn...@apache.org on 2026/04/28 12:49:40 UTC
(camel-quarkus) 01/01: Fix Milvus extension build failure with milvus-sdk-java 2.6.18
This is an automated email from the ASF dual-hosted git repository.
gnodet pushed a commit to branch fix-milvus-shaded-marshalling
in repository https://gitbox.apache.org/repos/asf/camel-quarkus.git
commit ca29b5cb238fefe17d3145e4992c00c8f2901b29
Author: Guillaume Nodet <gn...@gmail.com>
AuthorDate: Tue Apr 28 14:49:24 2026 +0200
Fix Milvus extension build failure with milvus-sdk-java 2.6.18
milvus-sdk-java 2.6.18 now bundles shaded gRPC/Netty classes under
io.milvus.shaded.*, including netty marshalling codec classes that
reference org.jboss.marshalling.ByteInput. The MilvusProcessor was
attempting to transform all io.milvus.* classes including these shaded
ones, causing ClassNotFoundException during Quarkus augmentation.
- Exclude io.milvus.shaded.* from bytecode transformation
- Add remapping rules for the new io/milvus/shaded/ prefix pattern
Co-Authored-By: Claude Opus 4.6 <no...@anthropic.com>
---
.../quarkus/component/milvus/deployment/MilvusProcessor.java | 11 ++++++++++-
1 file changed, 10 insertions(+), 1 deletion(-)
diff --git a/extensions/milvus/deployment/src/main/java/org/apache/camel/quarkus/component/milvus/deployment/MilvusProcessor.java b/extensions/milvus/deployment/src/main/java/org/apache/camel/quarkus/component/milvus/deployment/MilvusProcessor.java
index 5357ff425f..dce0328658 100644
--- a/extensions/milvus/deployment/src/main/java/org/apache/camel/quarkus/component/milvus/deployment/MilvusProcessor.java
+++ b/extensions/milvus/deployment/src/main/java/org/apache/camel/quarkus/component/milvus/deployment/MilvusProcessor.java
@@ -42,7 +42,7 @@ class MilvusProcessor {
index.getIndex().getKnownClasses().stream()
.filter(ci -> {
String name = ci.name().toString();
- return name.startsWith("io.milvus");
+ return name.startsWith("io.milvus") && !name.startsWith("io.milvus.shaded");
})
.forEach(ci -> {
transformers.produce(new BytecodeTransformerBuildItem(
@@ -71,6 +71,15 @@ class MilvusProcessor {
if (internalName == null)
return null;
+ if (internalName.startsWith("io/milvus/shaded/io/grpc/netty/shaded/io/grpc")) {
+ return internalName.replace("io/milvus/shaded/io/grpc/netty/shaded/io/grpc", "io/grpc");
+ }
+ if (internalName.startsWith("io/milvus/shaded/io/grpc/netty/shaded/io/netty")) {
+ return internalName.replace("io/milvus/shaded/io/grpc/netty/shaded/io/netty", "io/netty");
+ }
+ if (internalName.startsWith("io/milvus/shaded/io/grpc")) {
+ return internalName.replace("io/milvus/shaded/io/grpc", "io/grpc");
+ }
if (internalName.startsWith("io/grpc/netty/shaded/io/grpc")) {
return internalName.replace("io/grpc/netty/shaded/io/grpc", "io/grpc");
}