242 Commits

Author SHA1 Message Date
Erik O'Leary 00c23606cc Fix ParseMachineId (#459)
Fix issue parsing manual machine id; fixes #458 - second parameter of `Substring` is 'length' not 'index'
2019-01-07 08:31:35 -08:00
Max Gortman 6515aa0853 set version to 0.6.0 (#435) 2018-10-10 09:16:51 -07:00
SilverFox b5450a4647 Fix issue #422 (#423)
* Fix issue #422

It's an regression for #280, the sharedBufferList may leak to async path.

* Do check for DefaultChannelConfiguration.WriteBufferHighWaterMark when set

* Also check whether IncompleteWrite finish in sync for AbstractSocketByteChannel.

Otherwise may not all flushed buffer will be writen before next flush

* Invalid nio buffer cache for partial writen
2018-10-05 16:30:22 -07:00
Bruno Bossola 30a1aefba1 Fixed typo in .sln (#429)
The name of the .sln file does not match the filesystem name because of the case: this prevents the build to succeed in Linux systems.
2018-10-05 08:47:07 -07:00
Max Gortman 4bd2621c69 set version to 0.5.0 2018-08-20 08:02:18 -07:00
Max Gortman e3b0ffa7ed updated version to 0.4.9 2018-08-14 16:44:21 -07:00
Onat Yiğit Mercan a307801e84 align with java executor services (#402) 2018-08-14 10:46:18 -07:00
SilverFox 797629ac1b Pickup some commits not related to Mono from #374 (#410)
* Add some missing method to LoggingHandler

* Avoid to alloc an huge error message when the test not failed.

* Update the unittest

* Update Microsoft.NET.Test.Sdk from 15.0.0 to 15.7.2, fix that unable to debug an unittest for the second time.
* Disable parallelization for InternalLoggerFactoryTest.TestMockReturned to avoid an rare test failure.
* Remove `dotnet-xunit` since it's never used and will be discontinued, see https://xunit.github.io/releases/2.4-beta2

* Remove space from filename

* Switch back to `DiscardSomeReadBytes` since it's avaliable

* Rework some logic in TlsHandler

* Make sure TlsHandler.MediationStream works well with different style of aync calls(Still not work for Mono, see #374)
* Rework some logic in #366, now always close TlsHandler.MediationStream in TlsHandler.HandleFailure since it's never exported.

* Workaround to fix issue 'Microsoft/vstest#1129'.

* Change the default of TcpServerSocketChannel.Metadata.defaultMaxMessagesPerRead to 1
2018-08-13 11:38:06 -07:00
Johnny Z 2c0c10939e WebSocket support. (#400) 2018-08-13 10:58:52 -07:00
gmacster 9e3a84189f Convert javadoc to C# xmldoc in the DotNetty.Common project (#395)
This is a progressive commit towards completing #386.

No code changes have been made, only changes to comments.

These changes to comments include:
- Transforming {@link Symbol} occurrences to <see cref="Symbol"/>
- Updating Java example code in comments with C# equivalents
- Translating/removing comments that do not apply to .NET generally
- Removing Netty-specific comments that do not yet apply to this port
- Various grammar and typo corrections
2018-08-13 10:18:47 -07:00
SilverFox 59f18f28d5 Fix that an canceled ScheduledTask can still be executed in rare case (#398) 2018-08-08 10:14:28 -07:00
Varun Puranik e67df7994f Fix socket connecting synchronously (#413) 2018-08-08 10:11:25 -07:00
Johnny Z f5a7f3bf03 Fix perf tests. (#412) 2018-08-04 15:27:50 -07:00
Max Gortman 580bde0415 removing experimental label for libuv 2018-06-05 15:57:08 -07:00
Max Gortman 5eee925b75 set version to 0.4.8, update cake, fixed nuget reqs 2018-04-30 08:57:52 -07:00
Johnny Z b8370d7b34 Realign with Netty Redis codec. (#391) 2018-04-13 10:05:26 -07:00
Johnny Z f227f95966 HTTP 1.1 codec #52 (#256) 2018-04-11 09:31:39 -07:00
gmacster 997e60f19b Convert javadoc to C# xmldoc in the DotNetty.Transport project (#389)
This is a progressive commit towards completing #386.

No code changes have been made, only changes to comments.

These changes to comments include:
- Transforming {@link Symbol} occurrences to <see cref="Symbol"/>
- Updating Java example code in comments with C# equivalents
- Translating/removing comments that do not apply to .NET generally
- Removing Netty-specific comments that do not yet apply to this port
- Various grammar and typo corrections
2018-04-06 10:24:40 -07:00
Johnny Z 2cd04cd8a7 InliningDiagnoser/Unsafe unaligned. (#384) 2018-03-26 09:47:51 -07:00
Johnny Z 42f210a258 Made Libuv write promise complete on write callback #376. (#378) 2018-03-15 15:00:59 -07:00
Johnny Z 33b95cfe61 Buffer read/write/get/set strings. (#369)
Motivation:
Implement commonly used string-based operations (originally Netty CharSequence) for byte buffers.

Modifications:
Added read/write/get/set strings methods to byte buffers.
Also reduced unsafe pin/unpins for byte operations.

Result:
String-based operations are supported in DotNetty
2018-03-15 14:58:49 -07:00
Max Gortman 30f028021a Fixes channel initialization flow... (#377)
by bringing up ChannelInitializer up to speed on netty changes.
2018-03-14 14:20:50 -07:00
Max Gortman c8252cb00d close channel on write failure (#370) 2018-03-14 10:27:48 -07:00
Johnny Z 741aa6f1ca Fix incorrect merge. (#372) 2018-03-13 15:53:18 -07:00
SilverFox b2e8b4ba15 Improve unittest and fix some leak (#366)
- Fix #353, SniHandlerTest timeout in net452 and netcoreapp2.1(preview).
- Fix that test for TlsHandlerTest.NoAutoReadHandshakeProgresses never finish in netcoreapp2.0 and 2.1(preview)
- Fix some leak on TlsHandler and EmbeddedChannel.
- Update xunit from 2.2.0 to 2.3.1. That greatly improve the test speed of DotNetty.Buffers.Tests in net452.
2018-03-07 07:28:40 -08:00
gmacster 22953ae27a Update condition value for medium int length validation for #252 (#363)
The max value of a medium 24-bit integer is 2^24 which is 16,777,216 -
not 167,772,156.
2018-02-26 10:52:15 -08:00
Johnny Z d31f62a435 Motivation: (#364)
Pending write buffers released before Libuv write callbacks.

Modifications:
According to Libuv documentation, write requests sent with uv_write will be queued. It is safe to reuse the uv_write_t object only after the callback passed to uv_write is fired.
Made Libuv tcp writes release buffers only after the write callback is called. Aslo avoid write buffer pin/unpin operations if the byte buffers to write already pinned.

Result:
Fix #348 and potentially reduced write pin/unpin operations.
2018-02-26 10:51:10 -08:00
maksimkim 75652fbdd9 Channel pool (#313)
Motivation:

Provide a generic API and implementation for channel/connection pooling

Modifications:

Add IChannelPool / IChannelPoolMap API and implementations.

Result:

Reusable / Generic pool implementation that users can use.
2018-02-15 09:55:06 -08:00
Jon Steinich 5c25ff249b #328 Mark ProtobufDecoder and ProtobufEncoder as shareable (#340)
* Mark ProtobufDecoder and ProtobufEncoder as shareable

* Remove sealed modifier from ProtobufDecoder and ProtobufEncoder
2018-02-05 09:42:54 -08:00
SylphiaWindy 21f7ff7169 According to MSDN, "Using Shutdown on a connectionless Socket is not … (#355)
* According to MSDN, "Using Shutdown on a connectionless Socket is not recommended"
and the fact is calling Shutdown() on  an udp socket will cause an exception (socket not connected)
So we should simply call Close() then Dispose().
But there's no Close() method in dotnet core 1.1, so just an Dispose() would be enough.
2018-02-05 09:27:28 -08:00
SilverFox 145de18e87 Update LengthFieldBasedFrameDecoder, LengthFieldPrepender (#351)
* Add support for Medium length field in LengthFieldPrepender and LengthFieldBasedFrameDecoder(#252, #349).
* Fix that LengthFieldBasedFrameDecoder cannot decode message with ushort length.
* Prefer ByteOrder from LengthFieldBasedFrameDecoder.GetUnadjustedFrameLength's param instead of instance field.
2018-01-29 07:49:33 -08:00
Johnny Z 6c255296e9 Fix false positive resource leak report. (#347) 2018-01-28 22:12:23 -08:00
Johnny Z 4ddb22088a Libuv tests. (#332) 2018-01-19 11:11:02 -08:00
Jon Steinich ec68282625 Mark LoggingHandler as shareable (#339) 2018-01-09 13:18:49 -08:00
caozhiyuan e1e93f143b Linux socket send bugfix minimum change (#336) 2018-01-03 11:33:41 -08:00
Andrey Dorokhov c3b6768ed7 Add AppVeyor build status badge (#331) 2018-01-02 09:27:05 -08:00
Emma f2675ea16a Update copyright year (#334) 2018-01-02 09:25:42 -08:00
Johnny Z d77bc29389 Unsafe direct buffers. (#316) 2017-12-20 10:41:36 -08:00
SilverFox 5ac7f4a9f4 Fix int field length truncation (#326) 2017-12-20 10:36:59 -08:00
dpavsrtrl 3bd5556215 fix long field length truncation (#322) 2017-12-08 15:53:07 -08:00
mkim a05ec8c563 +FlowControlHandler 2017-11-26 01:37:16 -08:00
SilverFox 92289283c2 Fix #309
Add an workaround for NetworkInterface.GetPhysicalAddress() may return null in special case
2017-11-17 12:16:28 -08:00
Max Gortman 16a8bccb45 Stop leaking unobserved task exceptions on IChannelUnsafe.CloseAsync calls 2017-11-17 11:59:31 -08:00
Johnny Z 68d2675008 ResourceLeakDetector 2017-11-17 11:58:59 -08:00
Max Gortman 58a82a0e3c set version to 0.4.7 2017-11-06 16:01:29 -08:00
Johnny Z 76660cafe7 Libuv channel read. 2017-11-06 14:31:48 -08:00
mastermanu eab3bb109b Merge pull request #302 from nayato/listener
Adding InvalidArgument to closing socket errors
2017-11-06 09:55:18 -08:00
Max Gortman a758ec02cb Adding InvalidArgument to closing socket errors 2017-11-06 09:37:52 -08:00
alextolp 65b47356dd Make ReadListeningHandler thread-safe 2017-10-26 18:25:46 -07:00
SilverFox e6d9a7b95e Change name of prop numHeapArenas to match others and log output (#293)
`dotNetty.allocator.numHeapArenas` -> `io.netty.allocator.numHeapArenas`
2017-10-25 08:52:28 -07:00