You are viewing a plain text version of this content. The canonical link for it is here.
Posted to reviews@spark.apache.org by GitBox <gi...@apache.org> on 2019/04/30 22:18:36 UTC

[GitHub] [spark] vanzin commented on issue #24502: [SPARK-27610] - Yarn external shuffle service fails to start when spark.shuffle.io.mode=EPOLL

vanzin commented on issue #24502: [SPARK-27610] - Yarn external shuffle service fails to start when spark.shuffle.io.mode=EPOLL
URL: https://github.com/apache/spark/pull/24502#issuecomment-488136055
 
 
   How does this work? Won't the symbols in the native libraries still match the original, non-relocated names?
   
   e.g. in the source for the native lib I see this:
   
   ```
   static jint netty_epoll_native_JNI_OnLoad(JNIEnv* env, const char* packagePrefix) {
       // We must register the statically referenced methods first!
       if (netty_unix_util_register_natives(env,
               packagePrefix,
               "io/netty/channel/epoll/NativeStaticallyReferencedJniMethods",
               statically_referenced_fixed_method_table,
               statically_referenced_fixed_method_table_size) != 0) {
           return JNI_ERR;
       }
       // Register the methods which are not referenced by static member variables
       JNINativeMethod* dynamicMethods = createDynamicMethodsTable(packagePrefix);
       if (netty_unix_util_register_natives(env,
               packagePrefix,
               "io/netty/channel/epoll/Native",
               dynamicMethods,
               dynamicMethodsTableSize()) != 0) {
           freeDynamicMethodsTable(dynamicMethods);
           return JNI_ERR;
       }
   ```
   
   The shade plugin doesn't change those strings to be in the new relocated package. Never mind how the JVM is even able to match the relocate Java names to the symbols in the native library in the first place.

----------------------------------------------------------------
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.
 
For queries about this service, please contact Infrastructure at:
users@infra.apache.org


With regards,
Apache Git Services

---------------------------------------------------------------------
To unsubscribe, e-mail: reviews-unsubscribe@spark.apache.org
For additional commands, e-mail: reviews-help@spark.apache.org