-
Notifications
You must be signed in to change notification settings - Fork 4.9k
Conversation
/azp run corefx-ci |
Azure Pipelines successfully started running 1 pipeline(s). |
src/System.Net.Security/tests/StressTests/SslStress/Utils/PipeExtensions.cs
Outdated
Show resolved
Hide resolved
src/System.Net.Security/tests/StressTests/SslStress/Utils/PipeExtensions.cs
Outdated
Show resolved
Hide resolved
src/System.Net.Security/tests/StressTests/SslStress/Utils/PipeExtensions.cs
Show resolved
Hide resolved
namespace SslStress.Utils | ||
{ | ||
// Adapted from https://github.com/dotnet/corefx/blob/41cd99d051102be4ed83f4f9105ae9e73aa48b7c/src/Common/tests/System/IO/Compression/CRC.cs | ||
public static class CRC |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
What adaptation was needed? Why can't we just have a single shared implementation?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
In this case spanification. Note that this comment was copied from the stress project which also added a couple of string methods.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Can we make the changes to the shared implementation and use the spanified version in the original source as well?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yes, but it's unlikely I'll get this done before the cutoff.
Adds a console application for stress testing the SslStream class. The work somewhat imitates the setup that we already have in the http stress app: the app will open a fixed number of concurrent connections and run the stress scenaria for a fixed time period per connection (defaults at 2 minutes).
Unlike http2 there are no multiplexing concerns here, so the potential for stress tests seems less interesting. I've only included a single scenario for the moment: sending and echoing back of random data with basic integrity checks, using randomized permutations of
Write
,WriteAsync
,WriteByte
andFlush
methods. I haven't been able to reproduce failures so far, though I haven't run the app for extensive periods of time yet.