Commit Graph

484 Commits

Author SHA1 Message Date
Trustin Lee
57b2d9a443 Fixed issue: NETTY-65 (Intermittent high CPU consumption in LinkedTransferQueue)
* Applied the latest upstream fix
2008-11-18 09:43:53 +00:00
Trustin Lee
580f6f2284 * Another workaround for 'missing algorithm' error in SSLEngine
* Made handshaking non-volatile
2008-11-16 20:34:07 +00:00
Trustin Lee
87cd22b5fd More synchronization to avoid 'missing algorithm' error (not sure ..) 2008-11-16 17:59:27 +00:00
Trustin Lee
d0964a4b46 Additional synchronization condition to avoid 'missing algorithm' error 2008-11-16 16:35:09 +00:00
Trustin Lee
5df6229d2a A workaround for 'missing algorithm' error during handshake 2008-11-16 15:44:05 +00:00
Trustin Lee
62ed58a2be Made sure unwrap is called for all NEED_UNWRAP handshake status 2008-11-16 15:14:32 +00:00
Trustin Lee
dce019966e A workaround for 'missing algorithm' error during handshake 2008-11-16 15:06:10 +00:00
Trustin Lee
333f45ccd5 Made sure events are propagated somehow. 2008-11-16 15:02:01 +00:00
Trustin Lee
72ab3f04b0 * Removed output to stderr
* Made sure SSLEngine is cleaned up when a handler in the downstream raises an exception.
2008-11-16 14:43:49 +00:00
Trustin Lee
630473bf84 Fixed issue: NETTY-67 (ChannelBuffer.writeBytes() and setBytes() should not throw ClosedChannelException) 2008-11-16 13:52:47 +00:00
Trustin Lee
b29b5a8289 * Reverted previous SslHandler fix that doesn't work
* More strict handshake status check
2008-11-16 11:47:35 +00:00
Trustin Lee
834277a9eb Potential fix for intermittent SSL test failures 2008-11-16 11:29:36 +00:00
Trustin Lee
7896ec05f6 Fixed issue: NETTY-66 (MapUtil.isOrderedMap() blocks for a long time on a certain platform.)
* Replaced random number generation with a pre-populated sample table
2008-11-15 13:22:06 +00:00
Trustin Lee
c0a3f3383b Removed an unused static final field 2008-11-14 22:06:33 +00:00
Trustin Lee
90045fd487 Reverted my patch and applied Doug Lea's patch 2008-11-14 22:01:23 +00:00
Trustin Lee
3b5c36782d Fixed issue: NETTY-64 (Dead lock during SSL handshake)
* Acquired handshakeLock explicitly when sending handshake messages and executing delegated tasks
2008-11-14 12:05:49 +00:00
Trustin Lee
7123581038 Comment clean up as advised 2008-11-14 08:02:42 +00:00
Trustin Lee
09ef8e8964 Comment clean up as advised 2008-11-14 07:45:53 +00:00
Trustin Lee
8b3956b238 Typo in StringDecoder Javadoc 2008-11-14 06:07:56 +00:00
Trustin Lee
b876bd8cec Added a potential fix for infinite loop in LinkedTransferQueue.clean() 2008-11-13 14:11:59 +00:00
Trustin Lee
59e15efbbe Simplified NioWorker.register() - it was too complex 2008-11-08 12:00:07 +00:00
Trustin Lee
9aed1addb1 Potential fix for NPE in NioWorker.RegisterTask.run() 2008-11-07 17:43:44 +00:00
Trustin Lee
cd3acef9e1 Potention fix for NPE in NioWorker.RegisterTask.run() 2008-11-07 17:38:02 +00:00
Trustin Lee
0976673ac2 Potention fix for NPE in NioWorker.RegisterTask.run() 2008-11-07 17:37:10 +00:00
Trustin Lee
14a49ed042 Made NIO constraint detector much more robust against indefinite blocking by enabling timeout (7 secs) 2008-11-07 13:04:56 +00:00
Trustin Lee
b8af182e8c Fixed issue: NETTY-64 Duplicate Channel IDs are generated. 2008-11-07 08:23:15 +00:00
Trustin Lee
de2ff34dc2 Replaced System.currentTimeMillis() with System.nanoTime() 2008-11-07 03:00:19 +00:00
Trustin Lee
cee920f3b8 Workaround for the bogus FindBugs warning in ReplayingDecoderBuffer 2008-11-07 02:41:29 +00:00
Trustin Lee
f73de01a68 Doesn't need to reject ReplayingDecoderBuffer.equals() 2008-11-07 02:36:57 +00:00
Trustin Lee
34b9b00723 Fixed a potential concurrency issue in DefaultChannelFuture.notifyListeners(), as advised by FindBugs 2008-11-07 02:35:04 +00:00
Trustin Lee
81d29bafc2 Fixed warnings reported by FindBugs 2008-11-07 02:26:21 +00:00
Trustin Lee
9d35088801 & -> && 2008-11-07 02:10:44 +00:00
Trustin Lee
d8cd49c1b7 Fixed a warning reported by FindBugs in CompositeChannelBuffer 2008-11-07 02:08:36 +00:00
Trustin Lee
33187d0285 Fixed issue: NETTY-62 ChannelBuffers.EMPTY_BUFFER is not final 2008-11-07 02:05:09 +00:00
Trustin Lee
3a2a7a3a3c Made sure NioWorker.cleanUpWriteBuffer() is called even if the worker thread is not running. 2008-11-07 02:00:07 +00:00
Trustin Lee
ea1a68cb83 Made sure that NioWorker.wakenUp is set to true only when its selector is really waken up 2008-11-06 17:31:07 +00:00
Trustin Lee
22f33539c1 Fixed a problem where NPE is thrown when NioWorker.write() is called too early 2008-11-06 15:01:08 +00:00
Trustin Lee
85e63a2c98 Potential fix for NPE during SocketChannel.register(..) 2008-11-06 12:56:45 +00:00
Trustin Lee
59abaa1657 Tiny code cleanup 2008-11-06 11:41:01 +00:00
Trustin Lee
00ec5be6dd Fixed a bug where NioWorker.register() hangs up with high CPU consumption when it failed to open a selector. 2008-11-06 11:39:17 +00:00
Trustin Lee
7f1ff668f7 Fixed a bug where NioWorker.register() hangs up with high CPU consumption when it failed to open a selector. 2008-11-06 11:19:48 +00:00
Trustin Lee
486218ab28 Potential fix for NPE during SocketChannel.register(..) 2008-11-06 10:55:56 +00:00
Trustin Lee
b15fe51e95 RegisterTask should be a static class. 2008-11-06 08:49:00 +00:00
Trustin Lee
87b4f886a6 Code cleanup 2008-10-06 13:25:27 +00:00
Trustin Lee
dddf14f79a Fixed a bug: NETTY-56 (The ChannFuture returned by SslHandler.handshake() is not completed when the associated Channel is closed during handshake.) 2008-10-03 02:53:57 +00:00
Trustin Lee
8f9769f8e9 Removed unnecessary links 2008-10-02 05:02:46 +00:00
Trustin Lee
5120c1172c Simplfied the factorial example using the new SimpleChannelHandler 2008-10-02 04:44:06 +00:00
Trustin Lee
ca1f11ff67 Forgot to add the 'throws' clause 2008-10-02 04:43:02 +00:00
Trustin Lee
da04e2cae9 Fixed issue: NETTY-54 (Improve SimpleChannelHandler to implement ChannelDownstreamHandler)
Fixed issue: NETTY-55 (Channel.unbind() method is missing.)
2008-10-02 04:40:46 +00:00
Trustin Lee
6c2230aac2 Swallow AsynchronousCloseException 2008-10-01 13:14:28 +00:00
Trustin Lee
4376cd5a91 Fixed a bug: NETTY-53 (ClassNotFoundException when an ObjectDecoder with no ClassLoader specified tries to decode an object.)
* Explicitly acquired the current thread's context class loader if a user specified no or null class loader.
2008-10-01 11:06:18 +00:00
Trustin Lee
8d5d8fd172 Fixed another race condition which occurs when OP_WRITE and OP_READ flags are set/cleared at the same time 2008-10-01 08:42:26 +00:00
Trustin Lee
cfa6794292 Potential fix for NETTY-52 (IllegalArgumentException when trying to change the current interestOps) 2008-10-01 05:25:01 +00:00
Trustin Lee
dae3b05ebb Replaced FastQueue with LinkedTransferQueue 2008-10-01 04:49:10 +00:00
Trustin Lee
6d372c367b Added LinkedTransferQueue 2008-10-01 03:18:36 +00:00
Trustin Lee
2f4e20ce7a Made more generic 2008-09-30 14:23:38 +00:00
Trustin Lee
44c409ca24 More accurate default receive buffer size predictor implementation 2008-09-30 13:02:41 +00:00
Trustin Lee
0831b32090 Decreased the default maximum receive buffer size to 64KiB - it's enough for more cases. 2008-09-30 06:29:16 +00:00
Trustin Lee
950a386d3f Code cleanup 2008-09-30 01:53:24 +00:00
Trustin Lee
7de92967c2 Made MemoryAwareThreadPoolExecutor.shouldCount() extensible 2008-09-30 01:52:02 +00:00
Trustin Lee
85dc8f93f5 Fixed a bug where per-channel memory limitation didn't work correctly 2008-09-30 01:49:22 +00:00
Trustin Lee
8c15102bc3 Fixed issue NETTY-51 (MemoryAwareThreadPoolExecutor and its subtypes should use long instead of int to store the counters) 2008-09-30 00:42:04 +00:00
Trustin Lee
6f18c940dd Fixed issue NETTY-50 (Dead lock in MemoryAwareThreadPoolExecutor)
* Made sure that the max memory size properties become immutable
2008-09-30 00:31:32 +00:00
Trustin Lee
50f043fa3e Fixed issue NETTY-50 (Dead lock in MemoryAwareThreadPoolExecutor)
* Fixed incorrect release condition
2008-09-30 00:16:42 +00:00
Trustin Lee
d7c53437e9 Fixed errors in JavaDoc about OIO-based transport shutdown 2008-09-29 06:51:41 +00:00
Trustin Lee
8fb2f7c789 It's actually enough with a simple shutdown lock because we have only one acceptor thread. 2008-09-28 15:07:47 +00:00
Trustin Lee
dccc9f8665 * Improved the throughput of the server-side accept operation
* Added FastQueue.isEmpty()
2008-09-28 15:01:21 +00:00
Trustin Lee
4d17db6eb1 Using LinkedList seems to yield same or better performance 2008-09-28 14:21:38 +00:00
Trustin Lee
40b1f26c34 Made sure all segments are evaluated on poll for potentially better throughput (still proof-of-concept - getting better) 2008-09-28 14:12:28 +00:00
Trustin Lee
597cbd870c Isolated unchecked cast warning from FastQueue.poll() 2008-09-28 13:57:17 +00:00
Trustin Lee
6611563c8c Fixed a race condition in FastQueue 2008-09-28 13:52:49 +00:00
Trustin Lee
5170838e79 Added direct buffer support (disabled by default and can't be enabled without recompilation for now - should be fixed in 3.1.) 2008-09-28 12:51:50 +00:00
Trustin Lee
b64124efd6 * Renamed WriteMessageQueue to FastQueue, made it generic and optimized it
* Added ConcurrentFastQueue (proof of concept yet - slow)
2008-09-27 14:22:52 +00:00
Trustin Lee
a0d132a4d8 Moved WriteMessageQueue to the util package 2008-09-27 11:53:00 +00:00
Trustin Lee
f2c1734636 Reduced contention between I/O thread and writer 2008-09-26 12:28:09 +00:00
Trustin Lee
90ea9aa047 Formatting 2008-09-26 09:05:41 +00:00
Trustin Lee
362ecf640b Fixed a bug where DiscardClient didn't work since the last optimization 2008-09-26 09:04:02 +00:00
Trustin Lee
39086edae6 Introduced an intermediary write buffer to reduce the contention 2008-09-26 08:31:33 +00:00
Trustin Lee
0241120ace Optimization.. (reduced volatiles) 2008-09-26 07:00:30 +00:00
Trustin Lee
22d79a501d Replaced ConcurrentLinkedQueue with LinkedBlockingQueue in NioSocketChannel 2008-09-26 04:31:41 +00:00
Trustin Lee
9f5468f7a7 Made sure NioWorker.taskQueue doesn't contain the same WriteTask 2008-09-26 03:32:26 +00:00
Trustin Lee
5f1ecc9022 Fixed throughput issue when messages are written from different threads than I/O worker threads 2008-09-26 03:02:31 +00:00
Trustin Lee
ebdcb21421 Made sure StackTraceSimplifier is always loaded 2008-09-26 02:57:10 +00:00
Trustin Lee
824e0034c4 A little bit of optimization 2008-09-26 00:43:14 +00:00
Trustin Lee
33c1932353 Dunno why but SocketChannel.accept() sometimes returns null. 2008-09-25 11:05:45 +00:00
Trustin Lee
9c0b5d1949 Better table L&F 2008-09-24 12:01:50 +00:00
Trustin Lee
87390319c8 Added the list of available options 2008-09-24 11:28:46 +00:00
Trustin Lee
274fa4aac5 A little bit of duplication to help understanding of asynchronous operation 2008-09-24 10:49:39 +00:00
Trustin Lee
d0d99ff6bc More detailed explanation on ChannelFuture 2008-09-24 10:46:58 +00:00
Trustin Lee
320b7133a2 More clarification on ChannelHandlerContext 2008-09-24 10:37:19 +00:00
Trustin Lee
92be78df49 Rephrased the description of ChannelHandlerContext 2008-09-24 10:08:30 +00:00
Trustin Lee
0b8687cdeb More explanation on the characteristics of bootstraps 2008-09-24 09:55:19 +00:00
Trustin Lee
6a759f0c63 Fixed grammar, typo, and brevity in Javadoc comments 2008-09-24 09:48:32 +00:00
Trustin Lee
d52b238d62 * Fixed issue: NETTY-46 Excessive exception creation overhead when there are many pending write requests in a closed channel
* Added NioWorker.cleanUpWriteBuffer()
* Fixed issue: NETTY-47 Channel is not closed immediately when write operation fails due to closure.
  * Made sure to call NioWorker.close() in NioWorker.write(Un)Fair() and to call NioWorker.cleanUpWriteBuffer() in NioWorker.close();
2008-09-18 03:15:48 +00:00
Trustin Lee
9d4e51c7e0 shutdown() should be OK too 2008-09-10 12:11:40 +00:00
Trustin Lee
e34d494496 Fixed a bug where AbstractChannelBuffer.writeBytes() decreases the writerIndex when the specified channel is closed. 2008-09-06 09:11:18 +00:00
Trustin Lee
33a4a9f8e1 It's more correct to remove the connector handler in ClientBootstrap 2008-09-06 09:04:11 +00:00
Trustin Lee
985d260c8b Cosmetic changes related with apiviz 2008-09-05 11:54:13 +00:00
Trustin Lee
08f006c764 Cosmetic changes related with apiviz 2008-09-05 11:38:00 +00:00
Trustin Lee
b8c1472003 Cosmetic changes related with apiviz 2008-09-05 10:58:37 +00:00
Trustin Lee
27cc323dce Made sure flushPendingEncryptedWrites are called only when necessary 2008-09-05 01:58:35 +00:00
Trustin Lee
ab4d7f7660 Fixed an instruction about graceful shutdown - should use shutdownNow instead of shutdown for faster shutdown (and it's safe yet) 2008-09-05 00:59:07 +00:00
Trustin Lee
e1709c8e4b * Added another test case that checks shutdown time
* Optimized the hex dump table generation in ChannelBuffers
2008-09-05 00:57:22 +00:00
Trustin Lee
a056b9af63 * Fixed randomly failing ChannelBuffers.compareTo test
* Used shutdownNow instead of shutdown to shorten the test running time
* Added a test case that checks shutdown time
2008-09-05 00:01:33 +00:00
Trustin Lee
79499476c1 * Added ReadOnlyChannelBufferTest
* Added ReadOnlyChannelBuffer.toByteBuffers
2008-09-04 12:37:37 +00:00
Trustin Lee
d9a37093e2 More test cases and trivial fixes 2008-09-04 11:53:44 +00:00
Trustin Lee
f2267eb39c Removed unnecessary warning logs related with ClientBootstrap 2008-09-04 11:19:49 +00:00
Trustin Lee
8b9f63e578 Fixed issue: NETTY-43 (channelBound event can be fired more than once for NIO client socket)
* Fixed NioWorker.register() to check NioClientSocketChannel.boundManually flag
2008-09-04 11:14:43 +00:00
Trustin Lee
384e08209e Mismatching arrow length 2008-09-04 07:26:07 +00:00
Trustin Lee
a0b75a705e Added JavaDoc to the handler.execution package 2008-09-04 07:24:42 +00:00
Trustin Lee
35678cdf73 Added JavaDoc for handler.codec.replay 2008-09-04 06:35:06 +00:00
Trustin Lee
f744de9d85 * Added JavaDoc for the handler.codec.serialization package
* Improved JavaDoc for handler.codec.string and handler.ssl
2008-09-04 05:48:41 +00:00
Trustin Lee
f0c2c95c32 Added JavaDoc to handler.ssl package 2008-09-04 04:55:32 +00:00
Trustin Lee
5a1f62f419 Updated the package description for handler.codec.string 2008-09-04 03:19:42 +00:00
Trustin Lee
49e62cd000 Added JavaDoc for handler.codec.string 2008-09-04 03:14:19 +00:00
Trustin Lee
26a1d6e429 Added JavaDoc for handler.codec.frame package. 2008-09-04 03:00:48 +00:00
Trustin Lee
a79f3ff159 Extracted some important comments in the example code to a new section 2008-09-03 13:04:02 +00:00
Trustin Lee
f86a7d224b Added JavaDoc for FrameDecoder 2008-09-03 12:56:30 +00:00
Trustin Lee
5cde160df6 link -> linkplain 2008-09-03 10:57:17 +00:00
Trustin Lee
97b252afe3 Added a link to ChannelEvent in Channel JavaDoc 2008-09-03 08:30:17 +00:00
Trustin Lee
036abda601 Calculated -> Obtained 2008-09-03 07:51:25 +00:00
Trustin Lee
d96b633b5f * Added missing constructor JavaDoc
* Fixed description of workerCount parameter
2008-09-03 07:49:59 +00:00
Trustin Lee
101124f8b8 Explicitly mentioned that the nio worker threads run in a non-blocking mode 2008-09-03 07:46:33 +00:00
Trustin Lee
1ed7741a96 Added the limitation section to oio factories 2008-09-03 07:44:39 +00:00
Trustin Lee
7e491614cb Added JavaDoc for channel.socket.nio and oio 2008-09-03 07:41:27 +00:00
Trustin Lee
9e3973415e > -> >= 2008-09-03 05:20:49 +00:00
Trustin Lee
fd261b1044 Added proper author / version tags 2008-09-03 05:19:55 +00:00
Trustin Lee
48497ce1fd Added proper author / version tags 2008-09-03 05:17:59 +00:00
Trustin Lee
54e81bde72 JavaDoc for channel.socket package 2008-09-03 05:13:47 +00:00
Trustin Lee
bb5c59e816 s/propagation // 2008-09-03 04:12:40 +00:00
Trustin Lee
6b004f861b Filled in JavaDoc for trivial methods 2008-09-03 04:10:04 +00:00
Trustin Lee
38b3f4fa98 * Added DefaultChannelPipeline.toString()
* Filled in JavaDoc for trivial methods
2008-09-03 04:09:46 +00:00
Trustin Lee
c2f38fb6d3 More story in ChannelPipelineFactory 2008-09-03 03:58:20 +00:00
Trustin Lee
76c9d8eb3c Rewrote the ChannelHandlerContext explanation 2008-09-03 03:50:18 +00:00
Trustin Lee
62fc6b211e Added more hint to additional resources 2008-09-03 03:46:54 +00:00
Trustin Lee
267a8cb1d7 Added event name column to the table in ChannelDownstreamHandler 2008-09-03 03:39:27 +00:00
Trustin Lee
3e21792b12 Simplified a sentence in ChannelPipeline explanation 2008-09-03 03:10:00 +00:00
Trustin Lee
3e699b7f4a More JavaDoc on ChannelEvent 2008-09-03 03:08:27 +00:00
Trustin Lee
b23b9dd03b More explanation + more links 2008-09-03 03:04:51 +00:00
Trustin Lee
80d14bbb0e * Improved the diagram in ChannelPipeline 2008-09-03 02:59:25 +00:00
Trustin Lee
b06323011d * Added JavaDoc for Channels
* Improved the diagram in ChannelPipeline
2008-09-03 02:54:59 +00:00
Trustin Lee
78075ad7fc Improved ChannelPipeline documentation 2008-09-03 01:48:08 +00:00
Trustin Lee
a73cdb1a4a Easier example for ChannelConfig downcasting 2008-09-03 01:30:17 +00:00
Trustin Lee
b88674e437 Simplified the pipeline diagram 2008-09-03 01:23:57 +00:00
Trustin Lee
a8155f6b7f Reordering the sections in ChannelPipeline 2008-09-03 01:12:37 +00:00
Trustin Lee
6c8adf3198 Added a link to ChannelConfig in Channel 2008-09-03 01:09:40 +00:00
Trustin Lee
a145d578cc common -> recommended 2008-09-03 01:04:33 +00:00
Trustin Lee
82e677591c Fixed incorrect description 2008-09-02 14:23:40 +00:00
Trustin Lee
6c8acb2507 More JavaDoc for Channels 2008-09-02 14:21:40 +00:00
Trustin Lee
c05a337d74 Added some links into the example code 2008-09-02 14:12:56 +00:00
Trustin Lee
92ec297756 Emphasis on new expressions 2008-09-02 13:50:54 +00:00
Trustin Lee
cb5a375282 Shorter enum link 2008-09-02 13:46:47 +00:00
Trustin Lee
658b40c42e * Simpler sentences
* More cross references
* Fixed incorrect explanation related with attaching a pipeline to a channel
2008-09-02 13:45:14 +00:00
Trustin Lee
eef1c1d84d More cross-referencing 2008-09-02 13:27:40 +00:00
Trustin Lee
f9778a8dad * Reorganized JavaDoc content
* Added more missing JavaDoc
2008-09-02 13:20:03 +00:00
Trustin Lee
ed8651701d More JavaDoc 2008-09-02 12:04:04 +00:00
Trustin Lee
d1be3feefc * Fixed a problem Channel.bind/connect allows null parameter
* More JavaDoc
2008-09-02 10:39:57 +00:00
Trustin Lee
c344058a6f * Interpretation -> Meaning
* Added more explanation to ChannelState
2008-09-02 07:33:01 +00:00
Trustin Lee
fe7e2ea4bb Typo, grammar, duplication ... 2008-09-02 07:22:16 +00:00
Trustin Lee
b3c76b8cbf JavaDoc... 2008-09-02 07:13:20 +00:00
Trustin Lee
f203cf4e22 More JavaDoc in the buffer package 2008-09-01 16:06:40 +00:00
Trustin Lee
f4ce86a12d Disambiguation in ChannelPipelineCoverage 2008-09-01 16:01:47 +00:00
Trustin Lee
08e828c4fb More links to ChannelEvent and ChannelHandler in ChannelPipeline JavaDoc 2008-09-01 15:56:45 +00:00
Trustin Lee
9cc8c28491 JavaDoc 2008-09-01 15:52:26 +00:00
Trustin Lee
4865bb7d45 JavaDoc 2008-09-01 15:19:34 +00:00
Trustin Lee
47d141ed91 Shortened the first statement of ChannelHandler description 2008-09-01 14:34:56 +00:00
Trustin Lee
3e3162da1a Added support for IBM AIX 1.5 VM 2008-09-01 14:31:31 +00:00
Trustin Lee
fefe10f2dd JavaDoc 2008-09-01 14:29:17 +00:00
Trustin Lee
781a93bd43 Added missing JavaDoc for the classes in org.jboss.netty.logging 2008-09-01 09:43:49 +00:00
Trustin Lee
e5f88b536b Added missing JavaDoc for the classes in org.jboss.netty.util 2008-09-01 09:41:33 +00:00
Trustin Lee
e11e0f7ed5 Grammar 2008-09-01 09:27:53 +00:00
Trustin Lee
7a503f1519 * Added support for JRockit VMs
* Fixed incorrect test result on Windows and Solaris for Sun VMs
2008-09-01 07:56:24 +00:00
Trustin Lee
b8c2051407 Added quick autodetection support for IBM JDK 2008-08-31 03:29:13 +00:00
Trustin Lee
243264efb0 NioWorker optimization
* Use of read write lock
* Split write into two versions (fair and unfair)
2008-08-31 02:59:54 +00:00
Trustin Lee
c0b5d93b0a Added system property detection for Mac OS X 2008-08-30 12:57:04 +00:00
Trustin Lee
d2a07463ef Added SystemPropertyUtil 2008-08-30 07:29:00 +00:00
Trustin Lee
93c1dd58ba Improved NIO constraint level detection - should start up faster with Sun JVM 2008-08-30 07:28:23 +00:00
Trustin Lee
fd4de999bb Decreased the number of wakeup() calls even when then constraint level is greater than 0 2008-08-30 06:19:45 +00:00
Trustin Lee
90e35cfc14 Typo 2008-08-30 01:33:22 +00:00
Trustin Lee
8da05713fe Fixed issue: NETTY-40 (SslHandler dead lock on Oio-Oio communication)
* More fine-grained lock acquisition
2008-08-29 00:23:47 +00:00
Trustin Lee
07fba7f859 Suppressed unnecessary warning message .. (was not fixed in the previous fix) 2008-08-28 13:37:26 +00:00
Trustin Lee
ea784b00b5 Fixed unnecessary exception notification on AsynchronousCloseException 2008-08-28 12:15:00 +00:00
Trustin Lee
ec8f441ea6 Improved selector loop shutdown time 2008-08-28 11:49:22 +00:00
Trustin Lee
7d1ec11787 * Fixed issue: NETTY-36 DelimiterBasedFrameDecoder can choose a wrong delimiter when more than one delimiter are specified.
* A bunch of integration tests (78% test coverage)
2008-08-28 11:36:26 +00:00
Trustin Lee
605ac3d35a * Improved socket echo integration test to check the state more strictly.
* Fixed issue NETTY-35 (ChannelFuture returned by Channel.close() is not notified if SslHandler is in the pipeline.)
2008-08-28 09:07:34 +00:00
Trustin Lee
ddbabc98ef Integration tests (echo test) 2008-08-27 13:14:28 +00:00
Trustin Lee
c7a2e05ef2 Typo 2008-08-27 12:22:06 +00:00
Trustin Lee
4144017b75 * Fixed a bug where CompositeChannelBuffer.order() returns a wrong order
* Fixed a bug where ChannelBuffer.wrappedBuffer() can generate a non-EMPTY_BUFFER when the buffer is actually empty
2008-08-27 12:21:04 +00:00
Trustin Lee
7741934601 More test cases.. 2008-08-27 07:17:41 +00:00
Trustin Lee
a7c181072e Fixed issue: NETTY-33 (CompositeChannelBuffer.copy() does not respect the byte order.)
* More test cases..
2008-08-26 15:37:08 +00:00
Trustin Lee
3b69dd7ddb Fixed issue: NETTY-32 (ChannelBuffer.duplicate() sometimes doesn't copy all properties) 2008-08-26 11:08:55 +00:00
Trustin Lee
834b373a96 Fixed issue: NETTY-31 (ChannelBuffers.equals() fails to compare the buffers with different endianness)
* Same fix to compareTo
2008-08-26 10:52:21 +00:00
Trustin Lee
f4165b10e9 Fixed issue: NETTY-31 (ChannelBuffers.equals() fails to compare the buffers with different endianness)
* Made sure to swap the order if the two buffers have different orders
2008-08-26 10:35:36 +00:00
Trustin Lee
57551914af * More tests
* Fixed bulk transfer bugs in the CompositeChannelBuffer
2008-08-26 07:30:41 +00:00
Trustin Lee
8f3799c02e * More tests
* Fixed bugs related with bulk byte transfer
2008-08-26 07:12:04 +00:00
Trustin Lee
e5f1639f24 * JdkLogger passes null method name now - it's allowed in the specification explicitly.
* Better failure tracking in ServerBootStrapTest (still not sure if it's reproduceable)
2008-08-25 12:46:33 +00:00
Trustin Lee
10bc616b4b Fixed issue: NETTY-30 (JDK Logging is slow.)
* Used logp instead of log
2008-08-25 12:06:27 +00:00
Trustin Lee
88833d9ded Fixed issue: NETTY-29 (ChannelBufferInputStream.readFully(byte[], int, int) should throw IndexOutOfBoundsException.)
* ChannelBufferInputstream.checkAvailable() throws IndexOutOfBoundsException instead of IllegalArgumentException now.
2008-08-25 11:45:13 +00:00
Trustin Lee
4d13ccc109 Fixed failing tests 2008-08-25 11:04:01 +00:00
Trustin Lee
4f276cf52e Moved inner classes out to top level classes for easier testing 2008-08-25 10:16:56 +00:00
Trustin Lee
b4d84ce73b Fixed issue: NETTY-28 (Channel.compareTo() can return 0 for different channels.)
* Changed AbstractChannel.compareTo(Channel) to use the id of the channels instead of the identity hash codes
2008-08-25 08:57:03 +00:00
Trustin Lee
6ff5a87d01 * Removed SilentLoggerFactory which is not so useful
* Added ClientBootstrapTest
* Added ServerBootstrapTest
* Fixed a unexpected behavior when null localAddress or remoteAddress is specified
2008-08-25 08:44:35 +00:00
Trustin Lee
5a63b91c49 Removed unused constructor in MapBackedSet 2008-08-25 05:00:13 +00:00
Trustin Lee
ca249684a6 * Renamed ConvertUtil to ConversionUtil
* Added ConversionUtilTest
2008-08-25 04:42:18 +00:00
Trustin Lee
c84b1bc139 * Added MapUtilTest
* Added SilentLoggerFactory for a testing purpose
2008-08-25 04:31:44 +00:00
Trustin Lee
c95b219a56 * Extracted Bootstrap.isOrderedMap into util.MapUtil
* More test coverage for Bootstrap
2008-08-25 03:38:13 +00:00
Trustin Lee
a0d9a59206 Fixed issue: NETTY-26 (Infinite blocking in old blocking I/O transport.)
* Added a proper interrupt() call in OioWorker.close() to wake the worker thread up
2008-08-23 10:23:54 +00:00
Trustin Lee
b4c6d82be7 Fixed issue: NETTY-25 (Unnecessarily logged exception in the blocking I/O server socket)
* Suppressed the expected exception logging
2008-08-22 11:39:02 +00:00
Trustin Lee
9dd9b00851 Fixed issue: NETTY-24 (Move ChannelBuffer.EMPTY_BUFFER to ChannelBuffers.) 2008-08-21 05:54:59 +00:00
Trustin Lee
ff8f148990 Made sure debug mode is turned off if no, false, or 0 is specified. 2008-08-21 05:46:49 +00:00
Trustin Lee
5ac5611e51 Resolved issue: NETTY-23 (Simplify an exception stack trace.)
* Added DebugUtil and StackTraceSimplifier
* DefaultExceptionEvent and InternalLoggerFactory simplifies the stack trace unless Netty debug mode is enabled.
2008-08-21 05:38:43 +00:00
Trustin Lee
84ea016931 Forgot to check in ... 2008-08-20 08:22:05 +00:00
Trustin Lee
07f17cfd4f Fixed silly NPE in SslHandler 2008-08-20 07:06:10 +00:00
Trustin Lee
66f7d5a800 Fixed NETTY-21 and NETTY-22:
* ChannelBuffer.setBytes() and writeBytes() doesn't work when a NIO channel is specified.
* ChannelBuffer.setBytes() and writeBytes() should return -1 if the connection is closed.
* Changed NioWorker.read() to use ChannelBuffer.writeBytes()
2008-08-20 03:09:23 +00:00
Trustin Lee
edd969b384 Fixed slow write performance on some circumstance 2008-08-20 02:14:52 +00:00
Trustin Lee
e9e1b0ebe6 Even more optimization in NioWorker.write() 2008-08-20 01:38:21 +00:00
Trustin Lee
96e1cf0385 Fixed a problem with NIO constraint level detection in JRE 1.5 2008-08-20 01:37:15 +00:00
Trustin Lee
1ec42526d5 Related issue: NETTY-18 (Performance degradation when Channel.write() is called from outside an I/O thread (NIO transport)
* More precise constraint level detection.
2008-08-19 23:52:20 +00:00
Trustin Lee
4247232f51 Updated error message 2008-08-19 14:02:27 +00:00
Trustin Lee
e53b802def Relates issue: NETTY-18 (Performance degradation when Channel.write() is called from outside an I/O thread (NIO transport)
* Allowed a user to specify the NIO provider constraint level using the system property
* Added detectConstraintLevel() method to implement the constraint level autodetection
2008-08-19 14:01:41 +00:00
Trustin Lee
795b14a7b1 Relates issue: NETTY-18 (Performance degradation when Channel.write() is called from outside an I/O thread (NIO transport)
* Extracted NioWorker.WAKEUP_REQUIREMENT_LEVEL to NioProviderMetadata
2008-08-19 13:50:42 +00:00
Trustin Lee
3828b3754a Relates issue: NETTY-18 (Performance degradation when Channel.write() is called from outside an I/O thread (NIO transport)
* The bottleneck was too frequent wakeups.  I found that recent NIO implementations don't require wakeups to get / set interestOps.
2008-08-19 13:21:22 +00:00
Trustin Lee
07e0bf9413 Removed unused code in DefaultChannelFuture 2008-08-19 10:21:04 +00:00
Trustin Lee
65eda0902d Fixed an issue: NETTY-20 (Incorrect object length constraint in ObjectEncoder and ObjectEncoderOutputStream) 2008-08-19 10:17:00 +00:00
Trustin Lee
c76451b874 ObjectEncoder should allow zero estimated length as we did in DynamicChannelBuffer 2008-08-19 10:08:20 +00:00
Trustin Lee
6460f2a70f Runnable should be declared first as declared in the constructor 2008-08-19 10:06:55 +00:00
Trustin Lee
4d17646743 NETTY-19 Investigate if there's any copyright issue related with MINA
* Replaced NamePreservingRunnable with a new ThreadRenamingRunnable
2008-08-19 10:06:07 +00:00
Trustin Lee
094a4aaa8d Fixed issue: NETTY-17 (NioSocketChannelConfig.setWriteSpinCount() does nothing.)
* Added an assignment statement
2008-08-18 16:51:06 +00:00
Trustin Lee
1837b20051 Fixed an issue: NETTY-16 (SSL handshake failure should be reported to the ChannelPipeline.)
* Added SslHandler.newHandshakeFuture() and replaced all handshake future creation code with it
2008-08-18 11:30:58 +00:00
Trustin Lee
49bac1aa73 Fixed an issue: NETTY-15 (NullPointerException in SslHandler if handshake() method is not called explicitly.)
* Modified SslHandler.setHandshakeSuccess/Failure(..) to create a new handshakeFuture if not created yet.
2008-08-18 11:24:04 +00:00
Trustin Lee
2d6cfe9af6 Fixed an issue: Netty-14 (IllegalArgumentException when creating a dynamic buffer with 0 estimatedLength)
* Allowed zero initial capacity
* Made the exception message more specific
2008-08-18 11:17:42 +00:00
Trustin Lee
a7c73d2e52 Fixed issue: NETTY-13 (Stack overflow when an exception is thrown while processing ExceptionEvent)
* Renamed notifyException to notifyHandlerException
* Prevented infinite recursion caused by failure on exceptionCaught
2008-08-18 11:11:55 +00:00
Trustin Lee
a2eed846b4 Fixed NETTY-10 (Bootstrap.getPipeline() shold throw an IllegalStateException if pipelineFactory property is in use.) and NETTY-12 (Bootstrap.setPipeline() doesn't update the pipeline property at all.) 2008-08-18 03:07:05 +00:00
Trustin Lee
866a74305c Fixed issue: NETTY-10 (DefaultChannelPipeline.removeFirst() and removeLast() throws NullPointerException)
* Made sure NoSuchElementException is thrown when the pipeline is empty
* Made sure NullPointerException is not thrown when the pipeline contains only one handler
2008-08-18 02:38:54 +00:00
Trustin Lee
8e9b51a412 Fixed issue: NETTY-9 (DefaultChannelPipline.getFirst() and getLast() throws NullPointerException if the pipeline is empty.)
* Added null check code in getFirst() and getLast()
2008-08-18 02:27:11 +00:00
Trustin Lee
12dd5a35b3 More JavaDoc for ChannelPipelineCoverage 2008-08-12 12:09:50 +00:00
Trustin Lee
93f76ce594 * More comments on examples
* Added JavaDoc for ChannelPipelineCoverage which is somewhat difficult to understand.
2008-08-12 11:58:15 +00:00
Trustin Lee
5e99787df6 Split DiscardHandler into DiscardClientHandler and DiscardServerHandler for easier understanding 2008-08-12 10:39:53 +00:00
Trustin Lee
7de02097d0 Added APIviz tags to the logging package 2008-08-11 08:03:35 +00:00
Trustin Lee
31aa468741 Polished JavaDoc 2008-08-11 07:48:45 +00:00
Trustin Lee
27827068cd Fixed wrong explanation in ServerBootstrap 2008-08-11 07:46:54 +00:00
Trustin Lee
e5def24c8b Added JavaDoc for ChannelFuture and its related types 2008-08-11 07:33:19 +00:00
Trustin Lee
0d5657b923 Removed an empty line 2008-08-11 06:59:15 +00:00
Trustin Lee
24b4db3f57 JavaDoc for the bootstrap package 2008-08-11 06:57:13 +00:00
Trustin Lee
ad805a1f70 Fixed a JavaDoc error in ChannelBuffer 2008-08-11 04:10:20 +00:00
Trustin Lee
b2cc6c264c More JavaDoc 2008-08-11 04:08:41 +00:00
Trustin Lee
0a594a27d5 Fixed another two contract violations in AbstractChannelBuffer 2008-08-11 03:36:49 +00:00
Trustin Lee
d882e4f27c * JavaDoc cleanup
* Fixed contract violation in AbstractChannelBuffer.get/setBytes()
2008-08-11 03:33:25 +00:00
Trustin Lee
298c9eda57 Removed a unnecessary period 2008-08-10 15:43:04 +00:00
Trustin Lee
f34a018218 More JavaDoc 2008-08-10 15:34:17 +00:00