Skip to content
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

Commit 306299323cd seems to have broken finagle tests #9395

Closed
bryce-anderson opened this issue Jul 22, 2019 · 7 comments · Fixed by #9396
Closed

Commit 306299323cd seems to have broken finagle tests #9395

bryce-anderson opened this issue Jul 22, 2019 · 7 comments · Fixed by #9396
Labels
Milestone

Comments

@bryce-anderson
Copy link
Contributor

Expected behavior

Using the 4.1.38.Final-SNAPSHOT would not break out internal tests

Actual behavior

Tests broken

Steps to reproduce

Checkout commit 3062993 (or later) and run the finagle tests.

Netty version

Snapshot SHA 3062993.

I don't yet know why it's broken, it could be finagle depending on a bug, but I wanted to file a ticket to let you know so if we need a fix we can get it into 4.1.38.Final. I'm looking into the issue now.

@normanmaurer
Copy link
Member

That’s interesting... keep me posted

@normanmaurer
Copy link
Member

@bryce-anderson btw as this was only some cleanup we can also revert the commit while trying to figure out what's wrong. WDYT ?

@bryce-anderson
Copy link
Contributor Author

Let me try master with this reverted and we can go from there.

@normanmaurer
Copy link
Member

thanks ...

@bryce-anderson
Copy link
Contributor Author

Revert does fix it. It's a small enough diff that we might be able to sort it out pretty quick. Do you want to wait until tomorrow before reverting to give me a few hours to check how to fix it? The revert isn't 100% clean.

@normanmaurer
Copy link
Member

Yeah sounds good

@bryce-anderson
Copy link
Contributor Author

Added some comments to the commit.
3062993#r34402442

normanmaurer added a commit that referenced this issue Jul 23, 2019
Motivation:

3062993 introduced some code change to move the responsibility of creating the stream for the upgrade to Http2FrameCodec. Unfortunaly this lead to the situation of having newStream().setStreamAndProperty(...) be called twice. Because of this we only ever saw the channelActive(...) on Http2StreamChannel but no other events as the mapping was replaced on the second newStream().setStreamAndProperty(...) call.

Modifications:

- Just remove the Http2FrameCodec.onHttpClientUpgrade() method and so let the base class handle all of it. The stream is created correctly as part of the ConnectionListener implementation of Http2FrameCodec already.
- Adjust unit test to capture the bug

Result:

Fixes #9395
@normanmaurer normanmaurer added this to the 4.1.38.Final milestone Jul 23, 2019
normanmaurer added a commit that referenced this issue Jul 23, 2019
… and the correct handler is used

Motivation:

3062993 introduced some code change to move the responsibility of creating the stream for the upgrade to Http2FrameCodec. Unfortunaly this lead to the situation of having newStream().setStreamAndProperty(...) be called twice. Because of this we only ever saw the channelActive(...) on Http2StreamChannel but no other events as the mapping was replaced on the second newStream().setStreamAndProperty(...) call.

Beside this we also did not use the correct handler for the upgrade stream in some cases

Modifications:

- Just remove the Http2FrameCodec.onHttpClientUpgrade() method and so let the base class handle all of it. The stream is created correctly as part of the ConnectionListener implementation of Http2FrameCodec already.
- Consolidate logic of creating stream channels
- Adjust unit test to capture the bug

Result:

Fixes #9395
normanmaurer added a commit that referenced this issue Jul 23, 2019
… and the correct handler is used (#9396)

Motivation:

3062993 introduced some code change to move the responsibility of creating the stream for the upgrade to Http2FrameCodec. Unfortunaly this lead to the situation of having newStream().setStreamAndProperty(...) be called twice. Because of this we only ever saw the channelActive(...) on Http2StreamChannel but no other events as the mapping was replaced on the second newStream().setStreamAndProperty(...) call.

Beside this we also did not use the correct handler for the upgrade stream in some cases

Modifications:

- Just remove the Http2FrameCodec.onHttpClientUpgrade() method and so let the base class handle all of it. The stream is created correctly as part of the ConnectionListener implementation of Http2FrameCodec already.
- Consolidate logic of creating stream channels
- Adjust unit test to capture the bug

Result:

Fixes #9395
normanmaurer added a commit that referenced this issue Jul 23, 2019
… and the correct handler is used (#9396)

Motivation:

3062993 introduced some code change to move the responsibility of creating the stream for the upgrade to Http2FrameCodec. Unfortunaly this lead to the situation of having newStream().setStreamAndProperty(...) be called twice. Because of this we only ever saw the channelActive(...) on Http2StreamChannel but no other events as the mapping was replaced on the second newStream().setStreamAndProperty(...) call.

Beside this we also did not use the correct handler for the upgrade stream in some cases

Modifications:

- Just remove the Http2FrameCodec.onHttpClientUpgrade() method and so let the base class handle all of it. The stream is created correctly as part of the ConnectionListener implementation of Http2FrameCodec already.
- Consolidate logic of creating stream channels
- Adjust unit test to capture the bug

Result:

Fixes #9395
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
2 participants