kou commented on PR #45306:
URL: https://github.com/apache/arrow/pull/45306#issuecomment-2965108076

   ```text
   #0  0x00007f1d304e8130 in pthread_rwlock_wrlock () from 
/usr/lib/x86_64-linux-gnu/libc.so.6
   #1  0x00007f1d2a82ad6d in CRYPTO_STATIC_MUTEX_lock_write 
(lock=lock@entry=0x0)
       at 
/tmp/Rtmp99Cuj4/file7506b85ca03/_deps/aws-lc-src/crypto/thread_pthread.c:99
   #2  0x00007f1d2aa0675b in CRYPTO_get_ex_new_index (ex_data_class=0x0, 
out_index=0x0, argl=0, argp=0x0, 
       free_func=0x0) at 
/tmp/Rtmp99Cuj4/file7506b85ca03/_deps/aws-lc-src/crypto/ex_data.c:147
   #3  0x00007f1d28065a03 in ?? () from /usr/lib/x86_64-linux-gnu/libcurl.so.4
   ```
   
   This is the important part.
   
   The system curl uses OpenSSL 3 and its API 
https://docs.openssl.org/3.0/man3/CRYPTO_get_ex_new_index/ but aws-lc uses 
different API 
https://github.com/aws/aws-lc/blob/d7d349949d208f9bb5c2417bae017df55df5285f/crypto/internal.h#L806-L813
 . So we should use aws-lc only in aws-sdk-cpp.
   
   Apache Arrow C++ doesn't export `CRYPTO_get_ex_new_index`.
   
   ```console
   # nm --demangle release/*.a | grep CRYPTO_get_ex_new_index
                    U s2n$CRYPTO_get_ex_new_index
                    U s2n$CRYPTO_get_ex_new_index
                    U s2n$CRYPTO_get_ex_new_index
   0000000000000000 T s2n$CRYPTO_get_ex_new_index
                    U s2n$CRYPTO_get_ex_new_index
                    U s2n$CRYPTO_get_ex_new_index
                    U s2n$CRYPTO_get_ex_new_index
   ```
   
   So Apache Arrow R uses `libcrypto.a` built by aws-lc.
   
   ```console
   # DESTDIR=/tmp/debug.local make install
   ... 
   
/tmp/debug.local/arrow/r/check/arrow.Rcheck/00_pkg_src/arrow/libarrow/arrow-20.0.0.100000188/lib/libcrypto.a
   ...
   ```
   
   `make install` should not install aws-sdk-cpp related files. This is the 
problem.


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

Reply via email to