|
Ran
|
Jobs
1
|
Files
208
|
Run time
1min
|
Badge
README BADGES
|
push
LogbookServerHandler - attempt to write logs when the handler is prematurely removed from the ReactorNetty pipeline (#2064) * Change the place of netty's LogbookServerHandler position in the netty's pipeline Relates to #2053, #1555 LogbookServerHandler's channelRead() method is expecting to be invoked at least once with message object that is instance of `io.netty.handler.codec.http.LastHttpContent`. This happens when the handler is added using addHandlerLast(), which positioned it too late in the pipeline. By that point, other handlers (like content aggregators) had already consumed the LastHttpContent messages. When LogbookServerHandler was positioned incorrectly, it only saw the write() events but missed the complete read() events. This change proposes to position the LogbookServerHandler in the pipeline at the point when the message is readable and bufferable, but before handlers that may skip lead to skipping the pipeline calls for the last closing message. The solution also offers the following order of checks as none of the netty handlers that the solution relies on are mandatory: First priority: After HttpTrafficHandler (where HTTP messages are fully decoded but not yet consumed) Second priority: After HttpCodec (when HttpTrafficHandler isn't available) Last resort: At the end of the pipeline * Revert "Change the place of netty's LogbookServerHandler position in the netty's pipeline" This reverts commit e260e7dc0. * Trigger writing stages when handler is removed from the pipeline prematurely
5 of 5 new or added lines in 2 files covered. (100.0%)
3706 of 3706 relevant lines covered (100.0%)
1.0 hits per line
| ID | Job ID | Ran | Files | Coverage | |
|---|---|---|---|---|---|
| 1 | #5029.1 | 208 |
100.0 |
| Coverage | ∆ | File | Lines | Relevant | Covered | Missed | Hits/Line |
|---|