Skip to content

Initial SslStream stress app work - #123

Closed
eiriktsarpalis wants to merge 8 commits into
dotnet:masterfrom
eiriktsarpalis:sslstress
Closed

Initial SslStream stress app work#123
eiriktsarpalis wants to merge 8 commits into
dotnet:masterfrom
eiriktsarpalis:sslstress

Conversation

@eiriktsarpalis

Copy link
Copy Markdown
Member

Adds the changes initially created for the corefx repo in dotnet/corefx#42560

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 and Flush methods. I haven't been able to reproduce failures so far, though I haven't run the app for extensive periods of time yet.

@eiriktsarpalis

Copy link
Copy Markdown
MemberAuthor

NB I can't request reviews from https://github.com/orgs/dotnet/teams/ncl yet, so I'm adding some of you manually. cc @maryamariyan

@eiriktsarpaliseiriktsarpalis added the tenet-reliability Reliability/stability related issue (stress, load problems, etc.) label Nov 19, 2019
@davidshdavidsh added this to the 5.0 milestone Nov 19, 2019
@davidsh

Copy link
Copy Markdown
Contributor

Adds the changes initially created for the corefx repo in dotnet/corefx#42560

Does this PR incorporate the existing feedback/changes from the corefx repo PR which was already reviewed?

@davidsh

Copy link
Copy Markdown
Contributor

/azp run corefx-outerloop

@azure-pipelines

Copy link
Copy Markdown
No pipelines are associated with this pull request.

@davidsh

Copy link
Copy Markdown
Contributor

/azp list

@davidsh

Copy link
Copy Markdown
Contributor

/azp runtime-libraries outerloop

@azure-pipelines

Copy link
Copy Markdown
Command 'runtime-libraries' is not supported by Azure Pipelines.

Supported commands
  • help:
    • Get descriptions, examples and documentation about supported commands
    • Example: help "command_name"
  • list:
    • List all pipelines for this repository using a comment.
    • Example: "list"
  • run:
    • Run all pipelines or a specific pipeline for this repository using a comment. Use this command by itself to trigger all related pipelines, or specify a pipeline to run.
    • Example: "run" or "run pipeline_name"
  • where:
    • Report back the Azure DevOps orgs that are related to this repository and org
    • Example: "where"

See additional documentation.

@davidsh

Copy link
Copy Markdown
Contributor

/azp run runtime-libraries outerloop

@azure-pipelines

Copy link
Copy Markdown
Azure Pipelines successfully started running 1 pipeline(s).

@eiriktsarpalis

Copy link
Copy Markdown
MemberAuthor

Does this PR incorporate the existing feedback/changes from the corefx repo PR which was already reviewed?

Mostly yes, with the only outstanding issue being this one. I've been thinking about this, and my conclusion is that I'd prefer it if we didn't reference other test code, at least not until we're not validating the stress projects in CI. Moving forward I would like to consolidate the stress projects into a single solution which are built as part of CI. @stephentoub thoughts?

@eiriktsarpalis

Copy link
Copy Markdown
MemberAuthor

/azp run runtime-libraries outerloop

@azure-pipelines

Copy link
Copy Markdown
Azure Pipelines successfully started running 1 pipeline(s).

Comment threadsrc/libraries/System.Net.Security/tests/StressTests/SslStress/global.json Outdated
@jkotas

Copy link
Copy Markdown
Member

FYI: We are discouraging creating PR branches in the dotnet/runtime repo. Could you please create the branch in your fork next time?

https://github.com/dotnet/consolidation/blob/master/Documentation/issues-pr-management.md#what-will-be-dotnetruntimes-branch-policy

@eiriktsarpalis

Copy link
Copy Markdown
MemberAuthor

@jkotas The branches have been pushed to the main repo deliberately, as it's the only way I can debug the stress pipelines with the changes. I will make sure they are cleaned up as soon as the PRs are merged.

@eiriktsarpalis

Copy link
Copy Markdown
MemberAuthor

/azp list

@eiriktsarpalis

Copy link
Copy Markdown
MemberAuthor

/azp list

@eiriktsarpalis

Copy link
Copy Markdown
MemberAuthor

/azp run runtime-libraries stress-http-windows

@azure-pipelines

Copy link
Copy Markdown
Azure Pipelines successfully started running 1 pipeline(s).

@eiriktsarpalis

Copy link
Copy Markdown
MemberAuthor

Closing and re-creating as the publication of the repo has caused issues in my personal fork.

@eiriktsarpalis

Copy link
Copy Markdown
MemberAuthor

Replaced by #290

MichalStrehovsky pushed a commit to MichalStrehovsky/runtime that referenced this pull request Oct 12, 2020
@ghostghost locked as resolved and limited conversation to collaborators Dec 11, 2020
Sign up for freeto subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

area-System.Net.Securitytenet-reliabilityReliability/stability related issue (stress, load problems, etc.)

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants

@eiriktsarpalis@davidsh@jkotas@Dotnet-GitSync-Bot