Commit Graph

2072 Commits

Author SHA1 Message Date
Stephen Halter 4a78fccde9 Merge branch 'release/2.2' 2018-08-28 16:01:38 -07:00
Gert Driesen 1a43e67542 Remove workaround for dotnet/corefx#24562 (#2863)
This issue caused a bind to a recently used endpoint to fail on macOS and Linux.

Addresses #2820
2018-08-28 15:59:17 -07:00
Gert Driesen 1e2c330d50 Remove workaround for dotnet/corefx#24562 (#2863)
This issue caused a bind to a recently used endpoint to fail on macOS and Linux.

Addresses #2820
2018-08-28 15:56:18 -07:00
Stephen Halter bca244f758 Merge branch 'merge/release/2.2-to-master' 2018-08-28 11:33:01 -07:00
Stephen Halter 5ea537fbc4
Don't advance examined in Http1MessageBody.PumpAsync for canceled reads (#2847) 2018-08-28 11:28:17 -07:00
Stephen Halter 89f4850883
Avoid throwing the same exception instances in parallel (#2859) 2018-08-28 10:56:46 -07:00
David Fowler 6dc55a0462
Don't preserve the ExecutionContext when dispatching callbacks (#2861)
* Don't preserve the ExecutionContext when dispatching callbacks
- The layers up stack already preserve and restore the ExecutionContext, there's no need to capture and run for the scheduler callback and cancellation token callback
2018-08-28 09:32:33 -07:00
Stephen Halter 4d3647d7bf
Merge branch 'release/2.2' 2018-08-27 15:49:04 -07:00
David Fowler b039fb73c4
Update README.md 2018-08-27 15:12:29 -07:00
Stephen Halter f70ba53253
Fix race when SystemClock is accessed before first heartbeat (#2851) 2018-08-27 10:59:29 -07:00
ASP.NET CI b304f7bd5a Update dependencies.props
[auto-updated: dependencies]
2018-08-26 19:20:40 +00:00
John Luo c2bf921be8 Merge branch 'release/2.2' 2018-08-24 13:56:28 -07:00
John Luo f6cc980b2c Revert "Remove default port tests"
This reverts commit 74f4387807.
2018-08-24 13:55:15 -07:00
John Luo 1a7692447e Merge branch 'release/2.2' 2018-08-24 11:54:29 -07:00
John Luo 64127e6c76 Implement MaxFrameSize and HeaderTableSize for HTTP/2 2018-08-24 11:07:41 -07:00
David Fowler d318d7b94d
Make tests less flaky (#2848)
- Re-order logs with completing the task
2018-08-23 22:29:56 -07:00
Stephen Halter fc3c2eef5e
Handle SocketError.ProtocolType as a connection reset on macOS (#2845)
* Handle SocketError.ProtocolType as a connection reset on macOS
* Make IsConnectionResetError and IsConnectionAbortError stricter
2018-08-23 19:16:44 -07:00
Stephen Halter e5a1101239
Improve exception handling in SocketConnection (#2844)
- Avoid race where a connection reset observed by both DoSend() and DoReceive()
  resulted in a ConnectionAbortedException being thrown from the input Pipe
  instead of a ConnectionResetException.
2018-08-23 16:59:02 -07:00
David Fowler 68a0863524
General connection management (#2834)
This change makes the handling of graceful shutdown work for more than just http scenarios. This should allow us to move TLS further out and should also allow us to start moving things to connection middleware instead of connection adapters.
Summary of the things changed/added:
- Added IConnectionLifetimeNotificationFeature that represents an attempt to gracefully close the connection that isn't being aborted. This feels pretty awful but we may have to do it.
- Moved connection management to the ConnectionDispatcher and out of the HttpConnectionMiddleware
- Removed Http from the names of the ConnectionManager and Heartbeat
2018-08-22 20:35:28 -07:00
John Luo c9a1a42410 Merge branch 'release/2.2' 2018-08-21 18:42:23 -07:00
David Fowler 0b471f2b2f Sockets: do 0 byte reads to avoid allocating memory for idle connections
- Do not do 0 byte reads on OSX due to potential sockets bug
2018-08-21 18:07:15 -07:00
ASP.NET CI 912c36a6e0 Update package branding for 2.2.0-preview2 2018-08-21 13:33:51 -07:00
John Luo fab944f8ad Merge branch 'release/2.2' 2018-08-20 19:58:09 -07:00
John Luo 74f4387807 Remove default port tests 2018-08-20 15:54:41 -07:00
ASP.NET CI 066e89ddf9 Update dependencies.props
[auto-updated: dependencies]
2018-08-19 19:21:00 +00:00
John Luo 35042a7770 Merge branch 'release/2.2' 2018-08-18 23:31:53 -07:00
John Luo 6f7a841374 Fire OnStreamCompleted after all pipes are closed 2018-08-17 17:45:47 -07:00
Chris Ross (ASP.NET) fd5d1d5334 Merge branch 'release/2.2' 2018-08-17 15:54:38 -07:00
Chris Ross (ASP.NET) aa9dde2457 Extract bitshift helper code, Frame cleanup #2773 2018-08-17 15:48:16 -07:00
Chris Ross (ASP.NET) ff52525134 Skip ContentLength_Received_MultipleDataFramesOverSize_Reset 2018-08-17 15:44:19 -07:00
Chris Ross (ASP.NET) 50d238c6f2 Merge branch 'release/2.2'
# Conflicts:
#	src/Kestrel.Core/CoreStrings.resx
#	src/Kestrel.Core/Properties/CoreStrings.Designer.cs
#	test/Kestrel.InMemory.FunctionalTests/Http2/Http2StreamTests.cs
2018-08-16 08:44:29 -07:00
David Fowler 83488886e0
Clean up some remants of the past (#2827)
- Remove Application from HttpConnectionContext and Http*ConnectionContext (it's no longer required)
2018-08-15 23:41:32 -07:00
Stephen Halter 5becb72107
Improve test logs (#2826)
- Include hosting logs in some tests that where previously missing them
- Prevent duplicate logs from Mock CallBase an CompositeKestrelTrace
- Log ports used by transport functional tests
- Add file logging to HTTP/2 "unit" tests
2018-08-15 18:31:56 -07:00
Chris Ross (ASP.NET) 0c2923135b Limit concurrent HTTP/2 Streams per connection #2815 2018-08-15 15:58:57 -07:00
Chris Ross (ASP.NET) ac0109d389 Merge branch 'release/2.2' 2018-08-13 14:57:05 -07:00
Chris Ross (ASP.NET) 43398482a5 Implement MaxRequestBodySize for HTTP/2 #2810 2018-08-13 12:06:21 -07:00
Stephen Halter cd6de2fa18
Improve HTTP/2 stream abort logic (#2819)
- Fix race where headers frame could be written after an abort was observed
- Fix Http2StreamTests to verify expected abort-related exceptions
2018-08-13 11:45:17 -07:00
ASP.NET CI bd845eb145 Update dependencies.props
[auto-updated: dependencies]
2018-08-12 20:06:18 +00:00
ASP.NET CI 2bbd890357 Update dependencies.props
[auto-updated: dependencies]
2018-08-12 19:20:00 +00:00
John Luo 0010e971f2 Merge branch 'release/2.2' 2018-08-10 10:55:06 -07:00
Chris Ross (ASP.NET) bde7fcf45b Merge branch 'release/2.2' 2018-08-10 09:41:16 -07:00
John Luo 62a30a731d Fix bug in graceful shutdown 2018-08-10 00:17:29 -07:00
Stephen Halter bd3a8a3511 Small test fix to avoid potential flakiness 2018-08-09 12:12:24 -07:00
John Luo cef46fdaa7 Merge branch 'johluo/more-graceful' into release/2.2 2018-08-09 12:00:36 -07:00
John Luo 7c9e234457 Gracefully wait for streams to complete when pipe completes 2018-08-09 11:59:47 -07:00
Günther Foidl c8418c6de8 Derive SocketAwaitable from SocketAsyncEventArgs (#2592)
* SocketSenderReceiverBase as baseclass for SocketSender and SocketReceiver
* Made SocketAwaitable.GetResult inlineable
* SocketAwaitable renamed to SocketAwaitableEventArgs and inherited from SocketAsyncEventArgs

Thus saving an extra object (`SocketAwaitable`) and two int-fields, so less allocations.
2018-08-09 11:24:06 -07:00
Stephen Halter aaf0293ebc
Fix logging verification in tests (#2795) 2018-08-08 17:16:08 -07:00
Chris Ross (ASP.NET) aab0d1bdca Merge branch 'release/2.2' 2018-08-08 12:25:01 -07:00
Chris Ross (ASP.NET) b62bb641b2 Verify request Content-Length #2733 2018-08-08 12:23:59 -07:00
Stephen Halter f7ce86c8d7 Disable memory pool late return validation in H2SpecTests (#2768)
- We should reenable once HTTP/2 graceful shutdown is implemented
2018-08-08 12:07:59 -07:00