Copilot commented on code in PR #13096:
URL: https://github.com/apache/gluten/pull/13096#discussion_r4195225841


##########
package/pom.xml:
##########
@@ -121,37 +121,6 @@
                     <include>com.google.gson.**</include>
                   </includes>
                 </relocation>
-                <relocation>
-                  <pattern>org.apache.arrow</pattern>
-                  
<shadedPattern>${gluten.shade.packageName}.org.apache.arrow</shadedPattern>
-                  <!--
-                    arrow's C wrapper refers to the original class path, so it
-                    must not be relocated. Its public APIs also take and return
-                    org.apache.arrow.memory.* and org.apache.arrow.vector.*
-                    types, so those packages must also stay unshaded —
-                    otherwise the bundled (unshaded) 
ArrowArrayStream/ArrowSchema
-                    get compiled against the relocated
-                    BufferAllocator/VectorSchemaRoot, producing
-                    `NoSuchMethodError` for any caller passing a vanilla
-                    Apache Arrow allocator. See #12225.
-
-                    org.apache.arrow.util.** is the fourth and last package
-                    org.apache.arrow.c reaches: Preconditions.checkNotNull from
-                    the ArrowArray/ArrowSchema constructors, plus 
AutoCloseables
-                    and Collections2 from the import/export paths. It is not 
part
-                    of the public signature so it survived #12225, but the call
-                    sites live in the constant pool of the unshaded classes all
-                    the same, and there is no unshaded copy to bind to once
-                    arrow-memory-core stops being bundled.
-                  -->
-                  <excludes>
-                    <exclude>org.apache.arrow.c.*</exclude>
-                    <exclude>org.apache.arrow.c.jni.*</exclude>
-                    <exclude>org.apache.arrow.memory.**</exclude>
-                    <exclude>org.apache.arrow.vector.**</exclude>
-                    <exclude>org.apache.arrow.util.**</exclude>
-                  </excludes>
-                </relocation>
                 <relocation>

Review Comment:
   Arrow classes now retain their original names, but this remaining relocation 
still changes their public FlatBuffers types. For example, 
`org.apache.arrow.flatbuf.Message.header(com.google.flatbuffers.Table)` accepts 
the shaded `Table` in the bundle. A caller compiled against standard Arrow will 
get `NoSuchMethodError` when it invokes that method on the bundled class. 
Remove the FlatBuffers relocation as well to preserve these public signatures, 
and validate the resulting bundle with Spark's Arrow consumers.



-- 
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]

Reply via email to