Add concurrency regression tests for V2 IndirectSignatureFactory#193
Closed
JeromySt wants to merge 1 commit intousers/jstatia/v2_clean_slatefrom
Closed
Add concurrency regression tests for V2 IndirectSignatureFactory#193JeromySt wants to merge 1 commit intousers/jstatia/v2_clean_slatefrom
JeromySt wants to merge 1 commit intousers/jstatia/v2_clean_slatefrom
Conversation
V2's IndirectSignatureFactory already uses thread-safe static hash methods (TryHashData, IncrementalHash) that create fresh instances per call. Adding regression tests to guard against future regressions. Related to #191 Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
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
Adds concurrency regression tests for the V2
IndirectSignatureFactory, related to #191.Context
The V1
IndirectSignatureFactorycached a sharedHashAlgorithminstance causingCryptographicExceptionunder concurrent usage (fixed in #192). The V2 implementation already uses thread-safe static hash methods (TryHashData,IncrementalHash.CreateHash) that create fresh instances per call, so no code fix is needed.Changes
ConcurrentHashComputationShouldNotThrow— hammers the factory withParallel.Forfrom many threadsConcurrentAsyncHashComputationShouldNotThrow— launches many concurrent async tasksThese tests serve as a regression guard to ensure V2 remains thread-safe as the codebase evolves.