rishabhdaim opened a new pull request, #3242: URL: https://github.com/apache/jackrabbit-oak/pull/3242
Align the segment Azure connector's embedded transport dependencies with the blob connector versions merged in #3223. All version overrides stay in `oak-segment-azure/pom.xml`; the parent POM is unchanged. The POM changes: - Add the optional QUIC import in `oak-segment-azure` alongside its Reactor Netty upgrade. The blob bundle inherits its corresponding fix from #3223, so neither requires HTTP/3 libraries for OSGi activation. - In `oak-segment-azure`, explicitly use the blob versions selected by #3223: Azure HTTP Netty 1.16.8, Reactor Netty HTTP/core 1.2.18, Azure Core 1.58.0, JSON 1.5.1 and XML 1.2.1. Override Reactor Core and its test library to 3.7.19 locally. Segment's original HTTP Netty 1.14.1 / Reactor Netty 1.0.40 combination is compatible. This change aligns segment with the base PR's blob transport versions and prevents the missing `ProxyProvider.AddressSpec.socketAddress(SocketAddress)` method when upgrading the HTTP client alone. No connector implementation, public API, configuration default or storage format changes. Tests: - Run #3223's five client-construction tests under segment's dependencies using the existing blob test-jar dependency: no proxy, explicit proxy, discovered HTTPS proxy, bypass rules and authenticated HTTP proxy. - Add six segment tests covering sync/async downloads, service-principal token acquisition and bearer-token use, rejected credentials, segment write/read/close, archive listing and a direct-request control. They use real SDK transport objects and the existing MockServer dependency as a local HTTPS proxy with its test CA; no Docker or Azure account is needed. Reproduction evidence from the earlier HTTP Netty 1.16.4 version of this change: the same eleven segment tests passed against the original compatible stack, produced eight exact `NoSuchMethodError` errors plus three passing controls with only HTTP Netty upgraded, and all passed after alignment. The proxy-operation failures occurred during client construction; the passing aligned run then verified the operations. Validation of the dependency and test changes: - `mvn -B -ntp -pl oak-blob-cloud-azure,oak-segment-azure clean install` passes, including tests, bundle packaging, API baseline, and license checks. - Blob: 221 tests, 0 failures/errors, 7 skipped. Segment: 289 tests, 0 failures/errors, 11 skipped. All sixteen transport regression/control cases pass without skips. - The existing `OSGiIT.bundleStates` test reproduces the missing-QUIC failure before the packaging fix. All six `OSGiIT` checks pass with the packaging fix afterward, including bundle activation and repository access. - Both modules retain matching Azure transport and Reactor versions. `oak-parent/pom.xml` is unchanged from trunk. The QUIC packaging fix adds no dependency versions or native libraries. Targets `trunk` directly. Replaces #3224 so the branch name matches OAK-12470; prior discussion and review history remain on #3224. The blob prerequisite #3223 is already merged. Jira: https://issues.apache.org/jira/browse/OAK-12470 Co-Authored-By: OpenAI Codex <[email protected]> -- 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]
