Commit Graph

520 Commits

Author SHA1 Message Date
David Fowler 9e55787b84
Add support for listening to tcp handles to in the Sockets transport (#22618)
* Add support for listening to tcp handles to in the Sockets transport
- Make ListenHandleTests shared across both transports

Fixes #20842
2020-06-11 09:36:27 -07:00
William Godbe 64f7f5a883
Unquarantine test that's not flaky anymore (#22664) 2020-06-09 10:21:07 -07:00
Stephen Halter b454da498c
Merge branch 'master' into merge/release/5.0-preview6-to-master 2020-06-04 19:48:43 -07:00
James Newton-King ce32892387
Remove allocations by changing AsTask to GetAsTask (#22557) 2020-06-05 13:39:44 +12:00
Stephen Halter a50f94e8ff
Use default SslProtocols in Kestrel (#22437) 2020-06-04 16:44:27 -07:00
James Newton-King 8009350176
Log message when connection reaches maximum concurrent streams (#22452) 2020-06-03 10:11:06 +12:00
Brennan b5e37866d5
Quarantine flaky tests (#22450) 2020-06-02 13:01:54 -07:00
Doug Bunting 256045729a
Add `SuccessfulTests` to ensure something runs in every non-Helix run (#22406)
* Remove extra `[SkipOnHelix]` attribute
- only need the one compiled into Microsoft.AspNetCore.Testing
- update the documentation to reflect this
  - nit: address Markdown warnings that VS Code showed

* Add `SuccessfulTests` to ensure something runs in every non-Helix runs
- #22241
- cleans up hundreds of warnings but leaves a couple for the Blazor tests assembly
  - see comments about xUnit runner command line in the new class
2020-06-02 12:19:28 -07:00
Youssef Victor eab9005e6b
Make H3StaticTable static class (#21705)
* Update H3StaticTable.cs

* Update QPackEncoder.cs

* Update Http3TestBase.cs

* Update EncoderStreamReader.cs

* Update QPackDecoder.cs

* Update Http3Stream.cs

* Use s_ prefix for static fields
2020-05-29 21:36:35 +00:00
Huei Feng 3064728c05
Update Http3Connection lock objects to be readonly (#22263) 2020-05-28 14:18:14 -07:00
Doug Bunting 9d7ce5ea75
Quarantine a couple more tests (#22235) 2020-05-26 14:58:25 -07:00
Hao Kung a806ae62c3
Add helix-matrix.yml and windows arm 64 helix queue (#22002) 2020-05-23 17:08:18 -07:00
Doug Bunting fef33ad4a2 Quarantine tests based on recent failures 2020-05-22 11:13:07 -07:00
Pranav K 67b6be0337
Unquarantine CanVeryPhoneNumber test 2020-05-20 09:41:21 -07:00
Justin Kotalik 41eb22a0ac
Unquarantine tests (#21895)
* Unquarantine tests

* Update ShutdownTests.cs

* Update ShutdownTests.cs

* Update HubConnectionHandlerTests.cs

* Update src/SignalR/server/SignalR/test/HubConnectionHandlerTests.cs

Co-authored-by: Brennan <brecon@microsoft.com>

* Update HubConnectionTests.cs

Co-authored-by: Sébastien Ros <sebastienros@gmail.com>
Co-authored-by: Brennan <brecon@microsoft.com>
2020-05-18 19:04:48 +00:00
Ninds f908247222
Allow use of a default MemoryPoolFeature on ConnectionContext (#18579) 2020-05-15 14:42:52 -07:00
dotnet-maestro[bot] d5849f3534
[master] Update dependencies from dotnet/arcade dotnet/aspnetcore-tooling (#21630)
* Update dependencies from https://github.com/dotnet/arcade build 20200511.9
- Microsoft.DotNet.Arcade.Sdk: 5.0.0-beta.20228.4 => 5.0.0-beta.20261.9
- Microsoft.DotNet.GenAPI: 5.0.0-beta.20228.4 => 5.0.0-beta.20261.9
- Microsoft.DotNet.Helix.Sdk: 5.0.0-beta.20228.4 => 5.0.0-beta.20261.9

* Update dependencies from https://github.com/dotnet/aspnetcore-tooling build 20200514.6

Microsoft.AspNetCore.Mvc.Razor.Extensions , Microsoft.AspNetCore.Razor.Language , Microsoft.CodeAnalysis.Razor , Microsoft.NET.Sdk.Razor
 From Version 5.0.0-preview.5.20261.4 -> To Version 5.0.0-preview.6.20264.6

* Pre-emptively take -nobl change

* Disable binlogs in CI

* Fix build.sh to know about -nobl

* Align build.ps1|sh with latest Arcade parameters
- do not enable binary logs by default in CI builds
- leave `-binaryLog` and `-excludeCIBinaryLog` handling to eng/common/tools.ps1|sh
  - was unnecessary since `-bl /bl:{some name}` worked fine, ignoring OOMs

nit: document `-excludeCIBinarylog` a bit more

* Do not pass unknown options into CodeCheck.ps1

* Pass `-ci -nobl` into remaining CI build jobs

* Switch default TFM to `net5.0`

* Update missing project templates tfms

* Add more `-ci -nobl`
- needed because _all_ builds in the pipeline are implicitly CI builds
  - default-build.yml adds `-ci` when script wasn't explicit

* Default templates to net5.0

* PR feedback

* Update TFMs in explicit .nuspec files

* Update TFMs in test projects

* Update TFMs in test C# code

* Update TFMs in infrastructure files

* Future-proof a check for `net5.0` or later
- avoid comparisons involving `$(TargetFramework)` in .targets files
  - fine to compare it with `''` or `$(DefaultNetCoreTargetFramework)`

* !fixup! Undo a couple of earlier fixes
- remove a duplicate `$()` setting
- correct the one remaining versioned `#if` define
  - did not make it `#if NETCOREAPP` because benchmarks test numerous .NET Core TFMs

* Disable binary logs in CodeCheck.ps1

* Specify `-ci -nobl` just once when using `parameters.buildArgs`

* Restore `$binaryLog` default logic

Co-authored-by: Doug Bunting <6431421+dougbu@users.noreply.github.com>
Co-authored-by: Will Godbe <wigodbe@microsoft.com>
Co-authored-by: Viktor Hofer <viktor.hofer@microsoft.com>
2020-05-15 00:17:02 +00:00
David Fowler 5a0c097ad4
Added some kestrel event counters (#21649)
* Added some kestrel event counters
- Connection queue length - This is the amount of connections accepted and queued in the thread pool.
- Connection count - The number of connections
- Total connections - The total number of connections ever connected.
- Connection Rate - Connections per second

* Added TLS counters
- Current TLS handshakes
- Total TLS handshakes
- Failed TLS handshakes
- TLS handshake per second

* Added HTTP/2 queue length counter

* Improve the event information
- Add TLS version to handshake events
- Add HTTP version to request queue events
- Renamed HTTP/2 request queue length to http request queue


Contributes to #4769
2020-05-12 11:04:37 -07:00
David Fowler 6aa13dde98
Use a dedicated thread for timers in rather than a Timer (#21490)
* Use a dedicated thread for timers in rather than a Timer
- This make it possible to still timeout various operations when there's thread pool starvation occurring.
- Print heartbeat slow if duration > interval
2020-05-08 01:07:36 -07:00
Brennan 88dbfaa2ab
Set certificate in some Kestrel tests to avoid global machine state (#21516) 2020-05-05 19:18:37 -07:00
Stephen Halter 4ebf695a98
Fix NRE in KestrelServerOptions.Listen*() (#21467)
* Fix NRE in KestrelServerOptions.Listen*()

* Fix tests
2020-05-05 03:04:28 +00:00
Stephen Halter 100823af0d
Kestrel reloadable endpoint config (#21072) 2020-04-30 20:42:19 -07:00
Ben Adams 3af92e29b5
Make connection options parsing "safe" (#21004) 2020-04-29 16:23:56 -07:00
Ben Adams 5fc067266f
Make GetFinalTransferCoding "safe" (#21202) 2020-04-28 13:01:22 -07:00
Ben Adams 8b2f8088e9
Make GetKnownHttpScheme "safe" (#21204) 2020-04-28 12:58:38 -07:00
Stephen Halter 5ac720abb3
Don't count start line toward header size limit (#21272) 2020-04-28 10:36:45 -07:00
Ryan Brandenburg 2589a63141
Quarantine ServerAcceptsRequestWithheaderTotalSizeWithinLimit (#21191) 2020-04-25 21:26:50 +00:00
Ben Adams f5fa16e998
Make HTTP/1.1 startline parsing "safe" (#20885) 2020-04-23 18:32:54 -07:00
Brennan 2cd6a13a56
Quarantine flaky test (#21156) 2020-04-23 14:17:34 -07:00
Brennan f7c26b3130
Quarantine test that caused test abort (#21113) 2020-04-22 15:34:23 -07:00
Doug Bunting 2e970f8e4f Quarantine recent test failures
- see also #21080 for another recent failure
2020-04-21 22:27:15 -07:00
James Newton-King 42056d27d2
Remove flaky FlowControl_ParallelStreams_FirstInFirstOutOrder… (#21037) 2020-04-21 15:44:02 +12:00
David Fowler de63489aca
Add support for listening to arbitrary endpoints (#20892)
* Add support for listening to arbitrary endpoints
- This adds support for kestrel using arbitrary transports with any endpoint. This lets the consumer set an endpoint that flows all the way to the transport.
- Added tests

* Update src/Servers/Kestrel/Core/src/KestrelServerOptions.cs

Co-Authored-By: Chris Ross <Tratcher@Outlook.com>

Co-authored-by: Chris Ross <Tratcher@Outlook.com>
2020-04-16 23:57:41 -07:00
Javier Calvarro Nelson 8e1e81ae78
[HTTPS] Update certificate strategy for Mac OS (#20022)
* Fixes and improvements for dotnet-dev-certs:
* Revamps the HTTPS developer certificate tool implementation.
  * It accumulated a lot of cruft during the past few years and that has made making changes harder.
* Separated the CertificateManager implementation into different classes per platform.
  * This centralizes the decision point of choosing a platform in a single place.
  * Makes clear what the flow is for a given platform.
  * Isolates changes needed for a given platform in the future.
* Moved CertificateManager to a singleton
  * No more statics!
* Updates logging to use EventSource
  * We didn't have a good way of performing logging as the code is shared and must run in multiple contexts and the set of dependencies need to be kept to a minimum.
  * Adding ETW allow us to log/monitor the the tool execution and capture the logs with `dotnet trace` without having to invent our own logging.
  * We can decide to write an EventListener in `dotnet-dev-certs` to write the results to the console output.
* Updates the way we handle the dev-cert in Mac OS to use the security tool to import the certificate into the store instead of using the certificate store.
2020-04-16 13:52:10 -07:00
Stephen Halter ea555458dc
Always flush HTTP/2 headers despite flow control (#20831) 2020-04-15 09:22:27 -07:00
N. Taylor Mullen e7df020906 Quarantine AppCanHandleClientAbortingConnectionMidRequest. 2020-04-14 10:39:31 -07:00
Ben Adams 6016e70285
Make header parsing "safe" (#20562)
* OnHeadersComplete improve speculation and memory ordering (VTune)
2020-04-13 09:46:43 -07:00
Günther Foidl 810969084a
Replaced Span<T>.Fill(0) with Span<T>.Clear() (#20023) 2020-04-10 15:18:37 -05:00
John Luo 84a04c9df1
Quarantining tests (#20631)
* Quarantining tests

* Namespace collision
2020-04-08 12:53:53 -07:00
Chris Oliver b463e049b6
Move BadHttpRequestException to Http.Abstractions (#20339) 2020-04-06 14:42:16 -07:00
John Luo 8fac70750e
Merge pull request #20421 from dotnet/johluo/migrate-more-extensions-logging
Johluo/migrate more extensions logging
2020-04-03 11:49:22 -07:00
Adam Sitnik 54b4a0ffa2
add micro benchmark for parsing Json TechEmpower request (#20505) 2020-04-03 11:09:17 -07:00
Ben Adams f17520c6f0
Start each request on fresh ExecutionContext (#14146) 2020-04-02 17:26:22 -07:00
James Newton-King 746ac6bc8f
Fix flaky StreamPool_MultipleStreamsInSequence_PooledStreamReu… (#20434) 2020-04-03 10:10:46 +13:00
James Newton-King 53eaa8f106
Fix flaky StreamPool_StreamIsInvalidState_DontReturnedToPool (#20433) 2020-04-03 08:23:13 +13:00
John Luo fcb23108b6 Relocate Logging.Testing to AspNetCore.Testing 2020-04-02 00:16:01 -07:00
James Newton-King 0e4bcf602c
Add HPack dynamic compression (#20058) 2020-04-02 12:22:20 +13:00
James Newton-King 2f04721ff8
Fix flaky FlowControl_ParallelStreams_FirstInFirstOutOrder (#20342) 2020-04-01 11:08:27 +13:00
Justin Kotalik 1b3e8e1117
Quarantine GracefulTurnsAbortiveIfRequestsDoNotFinish (#20375)
https://dev.azure.com/dnceng/public/_build/results?buildId=581206&view=ms.vss-test-web.build-test-results-tab&runId=18274506&paneView=debug&resultId=119581
2020-03-31 14:46:17 -07:00
Justin Kotalik fa4600f5fa
Skip stream pool test (#20371) 2020-03-31 14:44:20 -07:00