Skip to content

Client: cut per-request allocation and CPU in the channel and session; measure the client in the load harness - #4720

Merged
marcschier merged 22 commits into
masterfrom
romanett/client-performance-profiling
Oct 10, 2026
Merged

marcschier merged 22 commits into
masterfrom
romanett/client-performance-profiling

Merge branch 'master' into romanett/client-performance-profiling

8f72693
Select commit
Loading
Failed to load commit list.
Codecov / codecov/project succeeded Oct 10, 2026 in 1s

82.86% (+0.01%) compared to c7fdeb6

View this Pull Request on Codecov

82.86% (+0.01%) compared to c7fdeb6

Details

Codecov Report

❌ Patch coverage is 90.69767% with 32 lines in your changes missing coverage. Please review.
✅ Project coverage is 82.86%. Comparing base (c7fdeb6) to head (8f72693).

Files with missing lines Patch % Lines
...c.Ua.Core/Stack/Tcp/UaSCBinaryChannel.Symmetric.cs 76.47% 7 Missing and 1 partial ⚠️
...c/Opc.Ua.Core/Security/Certificates/CryptoUtils.cs 89.47% 5 Missing and 1 partial ⚠️
src/Opc.Ua.Core/Stack/Tcp/TcpByteTransport.cs 82.35% 3 Missing and 3 partials ⚠️
src/Opc.Ua.Core/Stack/Tcp/UaSCBinaryChannel.cs 88.09% 5 Missing ⚠️
src/Opc.Ua.Client/Session/Session.cs 91.48% 3 Missing and 1 partial ⚠️
src/Opc.Ua.Core/Security/Certificates/AesCache.cs 81.81% 1 Missing and 1 partial ⚠️
...Opc.Ua.Client/Subscription/Classic/Subscription.cs 95.83% 1 Missing ⚠️
Additional details and impacted files

Impacted file tree graph

@@            Coverage Diff             @@
##           master    #4720      +/-   ##
==========================================
+ Coverage   82.84%   82.86%   +0.01%     
==========================================
  Files        2267     2268       +1     
  Lines      345968   346153     +185     
  Branches    60316    60358      +42     
==========================================
+ Hits       286617   286824     +207     
+ Misses      39253    39241      -12     
+ Partials    20098    20088      -10     
Files with missing lines Coverage Δ
src/Opc.Ua.Client/Session/SessionClientBatched.cs 95.50% <100.00%> (+<0.01%) ⬆️
.../Session/Subscription/ClassicSubscriptionEngine.cs 84.41% <100.00%> (+0.36%) ⬆️
...c/Opc.Ua.Core/Stack/Https/HttpsTransportChannel.cs 83.47% <100.00%> (+0.04%) ⬆️
src/Opc.Ua.Core/Stack/Tcp/ChannelAsyncOperation.cs 70.19% <100.00%> (+8.55%) ⬆️
src/Opc.Ua.Core/Stack/Tcp/ChannelToken.cs 91.48% <100.00%> (+0.37%) ⬆️
...c/Opc.Ua.Core/Stack/Tcp/UaSCBinaryClientChannel.cs 64.81% <100.00%> (+0.36%) ⬆️
src/Opc.Ua.Types/Encoders/BinaryEncoder.cs 91.78% <100.00%> (ø)
...Opc.Ua.Client/Subscription/Classic/Subscription.cs 76.88% <95.83%> (+0.08%) ⬆️
src/Opc.Ua.Core/Security/Certificates/AesCache.cs 81.81% <81.81%> (ø)
src/Opc.Ua.Client/Session/Session.cs 81.76% <91.48%> (+0.13%) ⬆️
... and 4 more

... and 30 files with indirect coverage changes

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.