Norman Maurer
845a7c5753
Move encode of chunked content to an extra method, this allows for inline. Related to #1812
...
encode of chunked content is not the most common pattern so moving it to an extra method makes it possible to inline the rest as it is a smaller method now.
2013-09-05 10:17:43 +02:00
Norman Maurer
92cec8d2ac
Split up the nioBuffers() method to allow for inline. Related to #1812
...
This move less common method patterns to extra methods and so make the nioBuffers() method with most common pattern (backed by one ByteBuffer) small enough for inlining.
2013-09-05 09:22:13 +02:00
Norman Maurer
c97971b53a
[ #1805 ] Fix example in javadocs of SimpleChannelInboundHandler
2013-09-03 20:30:56 +02:00
Norman Maurer
25c226a835
Make sure only direct ByteBuffer are passed to the underlying jdk Channel.
...
This is needed because of otherwise the JDK itself will do an extra ByteBuffer copy with it's own pool implementation. Even worth it will be done
multiple times if the ByteBuffer is always only partial written. With this change the copy is done inside of netty using it's own allocator and
only be done one time in all cases.
2013-09-02 20:17:53 +02:00
Norman Maurer
5416f2315e
[ #1797 ] No use internalNioBuffer() in derived buffers as it is not meant for concurrent access
2013-09-02 14:15:19 +02:00
Norman Maurer
0007fb81ef
Add tests to try to track down some buffer issues
2013-09-02 13:50:47 +02:00
Norman Maurer
4a5c840271
@Deprecated ChannelOutboundHandler.deregister(...)
2013-09-01 12:54:29 +02:00
Norman Maurer
795182843d
Remove legancy code which we not need anymore as we use gathering writes anyway everywhere
2013-09-01 11:00:58 +02:00
Norman Maurer
b8866aef33
No need to check instanceof everytime to find the next inbound / outbound context
2013-08-30 06:31:58 +02:00
Norman Maurer
aedd631dbb
[ #1798 ] Correctly handle skipping of too big frames
2013-08-29 13:51:50 +02:00
Norman Maurer
5ddd7cee90
[ #1797 ] Throw IllegalArgumentException if AbstractByteBuf.skipBytes(...) is used with a negative value
2013-08-29 11:14:36 +02:00
Norman Maurer
51a536fd30
Free up all buffers after the tests
2013-08-28 11:00:55 +02:00
Norman Maurer
7a38163743
[ #1788 ] Correctly decode CRC32 and ISIZE when using JdkZlibDecoder
...
Because of incorrect decoding a CompressionException was thrown before
2013-08-28 11:00:47 +02:00
Norman Maurer
3aa77f54f7
[ #1792 ] PlatformDependent.freeDirectBuffer(..) now respect hasUnsafe()
2013-08-28 07:23:37 +02:00
Derek Troy-West
12fe7b52b6
HTTP Chunk, wrong delimiter written
2013-08-27 18:11:21 +09:00
Derek Troy-West
6a4131c10f
Currently the system variable to chose which type of zlib decoder is being negated
2013-08-27 08:27:34 +02:00
Norman Maurer
32deb2c22b
[ #1785 ] Fix incorrect javadocs
2013-08-27 06:55:14 +02:00
Norman Maurer
2e39b25cd4
[maven-release-plugin] prepare for next development iteration
2013-08-26 12:01:03 +02:00
Norman Maurer
b67659a866
[maven-release-plugin] prepare release netty-4.0.8.Final
2013-08-26 12:00:54 +02:00
Norman Maurer
5e9b199296
@deprecated all methods which are related to deregister as it will be removed in 4.1.0.Final
2013-08-26 11:36:56 +02:00
Norman Maurer
65d24a7647
[ #1735 ] Disable usage of JdkZlibDecoder by default, will be enabled in 4.1.0.Final
2013-08-26 08:15:30 +02:00
Norman Maurer
80d30c3dd8
Small code improvements
2013-08-26 07:52:47 +02:00
Norman Maurer
77d4222db5
[ #1777 ] Use correct Thread when close per channel
2013-08-25 21:22:53 +02:00
Norman Maurer
f76c01c3aa
[ #1782 ] Fix IndexOutOfBoundException with direct buffer and gathering writes
2013-08-24 18:16:05 +02:00
Mike Schore
005d33a761
SPDY: allow MAX_CONCURRENT_STREAMS to be set to 0
2013-08-24 16:55:14 +02:00
Trustin Lee
7aefd0cbdb
Make AbstractBootstrap public
...
.. to work around the issue with JDK reflection described here:
http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=4283544
Fixes #1780
2013-08-24 17:20:53 +09:00
Trustin Lee
8142aae765
Improve the randomness of ThreadLocalRandom for all platform
...
- Fixes #1765
Java 6 did a poor job of generating seedUniquifier unlike 7, so I implemented platform-independent seedUniquifier generator with configurability
2013-08-24 12:25:50 +09:00
Norman Maurer
9ca20b73d3
Add testcase to show channelRegistered is called
2013-08-23 17:17:28 +02:00
bgallagher
51fa795819
fix race condition in test
2013-08-23 16:20:02 +02:00
Norman Maurer
206dc2a391
[ #1772 ] Make sure ChannelOutboundBuffer.recycle() does also reset unflushed, flushed and tail.
...
This fix a IndexOutOfBoundsException which as triggered if recycle() did cut down the buffer[] to the initial size.
2013-08-23 09:01:16 +02:00
Norman Maurer
9fd35d09a2
[ #1770 ] Fix NPE which was thrown if connection timeout was disabled and the connect did not finish directly when using NIO
2013-08-22 12:38:56 +02:00
bgallagher
6a2f340ec0
trim buffers before recycling
2013-08-21 20:28:54 +02:00
bgallagher
fb619f2394
fix writability callback
2013-08-21 16:39:50 +02:00
Norman Maurer
217b8e255c
[ #1763 ] Fill ChannelOutboundBuffer.nioBuffers with null on close to allow the content to be GC'ed
2013-08-20 21:15:05 +02:00
Trustin Lee
15cfa47ad9
Fix checkstyle
2013-08-20 14:40:28 +09:00
Trustin Lee
caf91b9c06
Fix IllegalStateException triggered while shutting down ThreadPerChannelEventLoopGroup
...
- Fix #1718
- Add the test case contributed by @mkw
2013-08-20 14:37:57 +09:00
Trustin Lee
20894bc99e
Fix a bug in internalNioBuffer() implementations of derived buffers
...
- A user can create multiple duplicates of a buffer and access their internal NIO buffers. (e.g. write multiple duplicates to multiple channels assigned to different event loop.) Because the derived buffers' internalNioBuffer() simply delegates the call to the original buffer, all derived buffers and the original buffer's internalNioBuffer() will return the same buffer, which will lead to a race condition.
- Fixes #1739
2013-08-20 14:28:50 +09:00
bgallagher
a383988cdb
add struct to replace parallel arrays consolidate flushed & unflushed buffers
2013-08-18 19:19:57 +02:00
bgallagher
06e250e493
remove unused initialCapacity
2013-08-17 14:10:33 +02:00
Norman Maurer
9e7529b2f5
[ #1743 ] Fix IllegalStateException by remove usage of PendingWrite in ChunkedWriteHandler. This needs more thoughts before re-introduce it
2013-08-16 08:11:19 +02:00
Jeff Pinner
d1f592575a
SPDY: ensure channel close happens after outbound message is written
2013-08-15 20:31:35 +02:00
Norman Maurer
39cabcd36c
[ #1481 ] Add a JdkZlibDecoder which has no dependencies
2013-08-14 07:41:28 +02:00
radimch
9acf130adb
resource leak: FileInputStream was never closed
2013-08-14 07:10:10 +02:00
bk1te
65fd9c0b12
use Promise instead of CallbackNotifier
2013-08-14 06:51:03 +02:00
Norman Maurer
48eb73f9b1
[ #1733 ] Correctly pass the promise to the ctx.write(...) in AbstractTrafficShapingHandler
2013-08-13 08:21:26 +02:00
Norman Maurer
f8f19d1539
[ #1732 ] Fix bug which lead ChannelTrafficShapingHandler stop to work after first Channel was disconnected
2013-08-13 08:09:59 +02:00
Norman Maurer
cc12e40065
[ #1730 ] Correctly release resources in MixedFileUpload after switching from Memory to Disk
2013-08-12 07:23:00 +02:00
Norman Maurer
b9e279064d
Minimize buffer allocation as it is expensive if no pooled buffers are used
2013-08-11 21:55:24 +02:00
Norman Maurer
7d31943326
Remove some dead code
2013-08-11 21:37:43 +02:00
Norman Maurer
73755d1233
[ #1729 ] Let StringEncoder extend MessageToMessageEncoder and so safe a memory copy
2013-08-11 21:24:02 +02:00