This repository has been archived by the owner on Nov 9, 2020. It is now read-only.
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
We are downgrading from Netty 5.0alpha 2 to Netty 4.1.0.Beta8 for two reasons: 1. There is a serious blocking bug in the HTTP/2 implementation in 5.0a2. It's fixed in 5.0a3, but there are no plans to release that any time soon. I asked the Netty maintainers, and they recommended downgrading to 4.1.b8: it's stable and fixes our HTTP/2 problems. Bug: netty/netty@44ee2ca Discussion about version: netty/netty#4586 2. Netty 4.1 is getting more attention. 5.0alpha2 was released in March with no updates since and none planned. Netty 4.1 had updates in September, October, and November. Included in this change: * Downgrade to Netty 4.1.0.Beta8 * Adjustments to code: the Netty API is slightly different * Removed use of WebCompression for websockets in websocket test because it's not in Netty 4.1. Test still passes, and we don't support compression on the server side. * Added test that sends more HTTP/2 data. This exposes the bug in Netty 5.0alpha2 and it passes with Netty 4.1.Beta8 Testing: * Passed in jenkins * Ran dcp-local-tests three times against this change (each with four Jenkins workers) and it passed. Performance: I did a sanity check to validate that this didn't regress HTTP/1.1 performance. I ran NettyHttpServiceClientTest.throughputGetRemote against http://127.0.0.1:8000/core/examples/stats using the ExampleHost with 100,000 operations. The median peak operations/second was 54112. That's slightly higher than my previous tests with 5.0alpha2 (which were about ~53000), but within the realm of our test variance. Caveat: One test intermittently fails: validateStreamExhaustion, so it has been disabled. This test constantly opens new connections. Eventually one of them fails because the client believes it has sent the HTTP/2 SETTINGS frame, but the server does not receive it. We work around this by retrying the connection if it fails. This is worrisome: until we have a real understanding. Until we have a real solution, we should consider HTTP/2 support experimental. Change-Id: I8d23c64cf68d0a2536e953d96f4664bd74d659d5
- Loading branch information
Alain Roy
committed
Dec 21, 2015
1 parent
a4b28c1
commit 975d61e
Showing
19 changed files
with
365 additions
and
338 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.