-
Notifications
You must be signed in to change notification settings - Fork 27
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
selected() not run for cached sessions #5
Comments
@ejona86 thanks for reporting this. I will look at it next week; if you have a test case that reproduces the issue, that will be great. |
I'll try to cook one up. In short, it would just create two connections to the same host. I needed a sleep between creating the two connections to guarantee breakage, but otherwise it was straight-forward. |
Failing test case: 0a08b38 . Things to note:
|
Now properly calling the selected() method on the client in case of SSL session resumption. Also completely rewrote tests to cover more cases.
@ejona86, thanks for your test case. I ended up rewriting from scratch all the test cases so I could not merge your contribution, but your test case was important to identify clearly the issue and fixing it. |
Great work all! @sbordet - Is 8.1.2.v20141202 on its way to maven central? Also will http://www.eclipse.org/jetty/documentation/current/alpn-chapter.html be updated to reflect the new version usage? For example does this unify all versions for java8 and java7...or will the older versions (pre java 1_8_25, 1_7_71) still have this issue? |
@Scottmitch it's already there. |
Perhaps it is still in transit? I'm still not seeing it: I also don't see the eclipse website updated with the new version numbers? |
I'm mostly curious if this change was made to the 7.1.0 and 8.1.0 versions (to have support for older jdk versions) and then forward ported to make 7.1.2 and 8.1.2. It doesn't look like this is the case? |
@Scottmitch the content on search.maven.org lags a bit. (its updated as of a few minutes ago). eg: http://central.maven.org/maven2/org/mortbay/jetty/alpn/alpn-boot/ |
@Scottmitch The change has been applied to 7.1.1 for 7u72 and 8.1.1 for 8u25. No backports planned. |
@joakime - Thanks for the heads up. @sbordet - Thanks for the confirmation about no backports. Just to confirm this issue does apply to the "older" versions of alpn-boot? Was there a reason why the change was not applied to the "old" version and forward ported? Seems like it would keep things consistent and make future changes easier if other issues are discovered (and also provide more correctness for these older java versions). |
@Scottmitch the issue applies to all versions apart those fixed. The fix has been applied only to the latest ALPN version, which applies to N latest OpenJDK version, in this case 7u71, 7u72 and 8u25. Older versions of ALPN match older OpenJDK versions that have been obsoleted. |
@sbordet - I think the scheme of coupling the alpn-boot version to OpenJDK works well to differentiate when upstream JDK releases have been merged. However I think it is a bit misleading if there is an alpn-boot specific bug that spans multiple versions as to which are safe/supported and which are not. Are there any limitations with the older alpn version such they depend upon the new OpenJDK features in order to get this patch? If the plan is to ignore the older alpn-boot versions (which I'm not sure I fully understand in this instance) then do we have, or is there a plan to have either of the following:
|
If a session is resumed, supports() and protocols() are called, but selected() is never called. It seems that for cached sessions severHello() returns at ClientHandshaker.java:631, whereas ALPN selected() processing starts on line 662.
The text was updated successfully, but these errors were encountered: