Repository navigation
Conversation
Port the SDK recovery from bmehta001/onnxruntime#11 so failed upload preparation cannot leave teardown waiting for a callback that was never registered. Release reserved records before retiring an upload, contain cleanup exceptions, and preserve HTTP ownership after registration. Protect pending callback allocation with RAII and evaluate request logging before handing ownership to the registry. Adapt all 14 component cases and six native fault modes to the SDK harness, plus a request-log failure test. Files changed: - lib/http/HttpClientManager.cpp - lib/system/Contexts.hpp - lib/system/TelemetrySystem.cpp - lib/tpm/TransmissionPolicyManager.cpp - lib/tpm/TransmissionPolicyManager.hpp - tests/functests/CMakeLists.txt - tests/functests/upload-exception-tests.cpp - tests/unittests/HttpClientManagerTests.cpp - tests/unittests/TransmissionPolicyManagerTests.cpp Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Copilot-Session: 6982f030-2ce2-47a3-b52b-9d8a1cdb05d9
Owner
Author
|
Superseded by the upstream PR: microsoft#1559 |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Port all SDK-relevant changes from bmehta001/onnxruntime#11 (source commit
611834d7eafd18ea0d4ca9ab28dfa3b539b3c61b) directly into the SDK, with regression tests adapted to this repository's harness.The native tests use a private collector URL on IPv4 loopback and the actual platform HTTP transport. They verify retry of the original reserved event, subsequent uploads, immediate teardown without retry after standard/nonstandard preparation failures, throwing HTTP handoff, and completion-then-throw. Each mode has a 30-second CTest timeout.
ORT-specific dependency-patch plumbing, telemetry wrapper/build integration, enable/disable behavior, and ORT documentation are intentionally not copied. The SDK now contains the fix itself rather than an external patch.
Validation
Fresh Debug builds with
MATSDK_WARNINGS_AS_ERRORS=ON, vendored SQLite/zlib, and the repository's pinned GoogleTest submodule:UnitTestsandUploadExceptionTestsupload-*native CTestsno-exceptions-smokebuild and CTestComponent selector:
TransmissionPolicyManagerTests.*:*UploadExceptionTests.*:HttpClientManager*.*. No selected tests were skipped or excluded; the two extra Linux cases exercise response-dispatcher fallback paths compiled only outside Windows.Formatting checks passed for the new native test and changed C++ implementation/test lines. Existing aligned header declarations were preserved.
git diff --cached --checkpassed before committing. No public package registries were used.This is targeted SDK/lifecycle validation, not a full SDK test-suite run or a reproduction of the reporter's COLMAP workload. No new sanitizer run was performed for this port. As in the source PR, microsoft/onnxruntime#33923's configuration-map SIGSEGV remains unconfirmed and is not claimed fixed.
Related: microsoft/onnxruntime#33929, microsoft/onnxruntime#33923 (non-closing references).