Flow-less summary storage
This PR proposes to add a summary storage without Flow's, which allows for deterministic (non-asynchronous!) subscriptions on summary edges.
Ultimately, this enables us to use MethodUnitResolver without any doubts, which currently is not very possible to due the fact that method-bound runners might die (i.e. might be killed by the manager) due to their queue exhaustion before the subscription on summary edges will be handled by the separate spawned coroutine (launch + SharedFlow::collect).
TODO:
- consider renaming the existing summary storage impl
- refine the interface of the summary storage
- add tests utilizing the
MethodUnitResolver
Test results on JDK 8
1 325 tests ±0 1 311 :white_check_mark: ±0 4m 35s :stopwatch: -29s 48 suites ±0 14 :zzz: ±0 48 files ±0 0 :x: ±0
Results for commit f562c7b8. ± Comparison against base commit bf3f6b46.
:recycle: This comment has been updated with latest results.
Codecov Report
Attention: Patch coverage is 34.95146% with 67 lines in your changes missing coverage. Please review.
Project coverage is 75.52%. Comparing base (
bf3f6b4) to head (f562c7b). Report is 1 commits behind head on develop.
Additional details and impacted files
@@ Coverage Diff @@
## develop #222 +/- ##
=============================================
- Coverage 75.78% 75.52% -0.27%
- Complexity 1649 1653 +4
=============================================
Files 175 176 +1
Lines 10241 10421 +180
Branches 1892 1937 +45
=============================================
+ Hits 7761 7870 +109
- Misses 1715 1787 +72
+ Partials 765 764 -1
:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.
Test results on JDK 19
1 325 tests ±0 1 313 :white_check_mark: ±0 7m 32s :stopwatch: + 2m 30s 48 suites ±0 12 :zzz: ±0 48 files ±0 0 :x: ±0
Results for commit f562c7b8. ± Comparison against base commit bf3f6b46.
:recycle: This comment has been updated with latest results.
Test results on JDK 11
1 325 tests ±0 1 315 :white_check_mark: ±0 7m 18s :stopwatch: +59s 48 suites ±0 10 :zzz: ±0 48 files ±0 0 :x: ±0
Results for commit f562c7b8. ± Comparison against base commit bf3f6b46.
:recycle: This comment has been updated with latest results.
Lifecycle test results
48 tests ±0 48 :white_check_mark: ±0 1m 24s :stopwatch: -1s 5 suites ±0 0 :zzz: ±0 5 files ±0 0 :x: ±0
Results for commit f562c7b8. ± Comparison against base commit bf3f6b46.
:recycle: This comment has been updated with latest results.
Moved to https://github.com/UnitTestBot/usvm/pull/235