Gabriel39 opened a new pull request, #69420:
URL: https://github.com/apache/doris/pull/69420

   ### What problem does this PR solve?
   
   Azure file access and repository creation can fail with an 
`IoHandlerFactory` loader-constraint violation when Reactor Netty selects 
io_uring. The Azure filesystem plugin bundles Netty core but omits its optional 
io_uring transport, so the child-first loader obtains the transport from the FE 
host while retaining its own core interfaces.
   
   Bundle BOM-managed io_uring classes and Linux x86_64/aarch64 native 
libraries with the Azure plugin. This keeps both Java types and native 
resources local to the plugin without changing the global class-loading policy.
   
   Add isolated-loader tests using the Maven runtime dependency set, rather 
than the full Surefire classpath. They check transport type identity, both 
packaged native resources, and event-loop task execution and shutdown after 
host-side initialization. Regenerate the runtime classpath on partial 
build-cache restores so tests never consume a missing or stale local path list.
   
   ### Release note
   
   Fix Azure file access and repository creation failures caused by mixed 
host/plugin Netty classes when io_uring is selected.
   
   ### Check List (For Author)
   
   - Test:
       - [x] Unit test
       - [x] Manual test
   - Behavior changed:
       - [x] Fix dependency packaging; no SQL or configuration changes.
   - Does this need documentation?
       - [x] No.
   
   Validation:
   - Reproduced the original `IoHandlerFactory` loader-constraint violation 
using the actual directory-loaded Azure plugin from build `6ca5ef36d8`, without 
contacting Azure.
   - New tests fail before the dependency fix; all 94 Azure module unit tests 
pass afterward, including the three isolated-loader tests.
   - Confirmed the assembled Azure plugin zip contains the io_uring classes and 
both native classifier jars. Loaded that actual bundle through the directory 
plugin manager and successfully executed an event-loop task.
   - FE build/package and final FE Checkstyle pass. The FE-only local build 
bypassed an unrelated preflight check for missing BE native archives; no 
build-script changes are included.
   - Maven validates the cache execution configuration; `git diff --check` 
passes.
   
   The local kernel denies io_uring ring creation, so event-loop execution 
validates automatic fallback on this host. The tests also exercise the native 
path when it is available. Full Azure credential-backed regression suites and 
an io_uring-enabled host run remain for CI.
   


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