corpoverlords opened a new pull request, #47903:
URL: https://github.com/apache/arrow/pull/47903

   
   ### Rationale for this change
   
   This would allow Arrow to coexist with other libraries that also use the AWS 
SDK. Internally since 2 years ago AWS SDK already has a refcount mechanism for 
`InitAPI` and supports re-init after deinit.
   
   - Introduced a mutex for thread-safe re-initialization of the S3 client 
after finalization, replacing the previous std::call_once mechanism.
   - Added an Initialize method to reset the finalized state of the S3 client.
   - Updated EnsureInitialized to allow re-initialization while ensuring thread 
safety.
   
   This change improves the flexibility and safety of the S3 client lifecycle 
management.
   
   ### What changes are included in this PR?
   
   S3FS init changes
   
   ### Are these changes tested?
   
   Tested with our local infra. I can add a unit test in a dedicated cpp file 
(due to init/deinit usage) if wanted.
   
   ### Are there any user-facing changes?
   
   No
   
   **This PR includes breaking changes to public APIs.** (If there are any 
breaking changes to public APIs, please explain which changes are breaking. If 
not, you can remove this.)
   
   **This PR contains a "Critical Fix".** (If the changes fix either (a) a 
security vulnerability, (b) a bug that caused incorrect or invalid data to be 
produced, or (c) a bug that causes a crash (even when the API contract is 
upheld), please provide explanation. If not, you can remove this.)
   


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