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

8305906: HttpClient may use incorrect key when finding pooled HTTP/2 connection for IPv6 address #2531

Closed

Conversation

varada1110
Copy link

@varada1110 varada1110 commented Feb 19, 2024

Hi all,

This pull request contains a backport of commit 43956686 from the openjdk/jdk17u-dev repository.

The commit being backported was authored by Jaikiran Pai on 16 Feb 2024 and was reviewed by Paul Hohensee.

Thanks!


Progress

  • Change must not contain extraneous whitespace
  • Commit message must refer to an issue
  • JDK-8305906 needs maintainer approval

Issue

  • JDK-8305906: HttpClient may use incorrect key when finding pooled HTTP/2 connection for IPv6 address (Bug - P4 - Approved)

Reviewers

Reviewing

Using git

Checkout this PR locally:
$ git fetch https://git.openjdk.org/jdk11u-dev.git pull/2531/head:pull/2531
$ git checkout pull/2531

Update a local copy of the PR:
$ git checkout pull/2531
$ git pull https://git.openjdk.org/jdk11u-dev.git pull/2531/head

Using Skara CLI tools

Checkout this PR locally:
$ git pr checkout 2531

View PR using the GUI difftool:
$ git pr show -t 2531

Using diff file

Download this PR as a diff file:
https://git.openjdk.org/jdk11u-dev/pull/2531.diff

Webrev

Link to Webrev Comment

@bridgekeeper
Copy link

bridgekeeper bot commented Feb 19, 2024

👋 Welcome back varadam! A progress list of the required criteria for merging this PR into master will be added to the body of your pull request. There are additional pull request commands available for use with this pull request.

@openjdk openjdk bot changed the title Backport 43956686c924658ee2d7866e46ee9f10d9595c35 8305906: HttpClient may use incorrect key when finding pooled HTTP/2 connection for IPv6 address Feb 19, 2024
@openjdk
Copy link

openjdk bot commented Feb 19, 2024

This backport pull request has now been updated with issue from the original commit.

@openjdk openjdk bot added backport rfr Pull request is ready for review labels Feb 19, 2024
@mlbridge
Copy link

mlbridge bot commented Feb 19, 2024

Webrevs

@GoeLin
Copy link
Member

GoeLin commented Feb 26, 2024

Hi @varada1110 ,
I think you don't need the test adaptions to SimpleSSLContext. But the test will not work with jtreg 6.1 as it uses jupiter code not in jtreg 6.1. Make sure your local tests for 11 use jtreg 6.1.

test/jdk/java/net/httpclient/http2/ConnectionReuseTest.java:41: error: package org.junit.jupiter.api does not exist
import org.junit.jupiter.api.AfterAll;

@GoeLin
Copy link
Member

GoeLin commented Feb 26, 2024

#2553 solves a similar issue.

@varada1110
Copy link
Author

Thanks @GoeLin for pointing that out. I tested with wrong jtreg version. I will fix the errors.

@varada1110
Copy link
Author

Hi @GoeLin, can you please review the changes. Test is passing now with jtreg 6.1

@openjdk
Copy link

openjdk bot commented Mar 13, 2024

@varada1110 This change now passes all automated pre-integration checks.

After integration, the commit message for the final commit will be:

8305906: HttpClient may use incorrect key when finding pooled HTTP/2 connection for IPv6 address

Reviewed-by: jpai, phh

You can use pull request commands such as /summary, /contributor and /issue to adjust it as needed.

At the time when this comment was updated there had been 74 new commits pushed to the master branch:

  • 69f4ac1: 8240226: DeflateIn_InflateOut.java test incorrectly assumes size of compressed file
  • 4556aa9: 8317288: [macos] java/awt/Window/Grab/GrabTest.java: Press on the outside area didn't cause ungrab
  • 7b377ac: 8329013: StackOverflowError when starting Apache Tomcat with signed jar
  • 31a780d: 8276819: javax/print/PrintServiceLookup/FlushCustomClassLoader.java fails to free
  • c35d30d: 8331263: Bump update version for OpenJDK: jdk-11.0.25
  • 47fd86c: 8273153: Consolidate file_exists into os:file_exists
  • 8a489e5: 8293887: AArch64 build failure with GCC 12 due to maybe-uninitialized warning in libfdlibm k_rem_pio2.c
  • 3533374: 8312194: test/hotspot/jtreg/applications/ctw/modules/jdk_crypto_ec.java cannot handle empty modules
  • b7596f3: 8316138: Add GlobalSign 2 TLS root certificates
  • b8ee2aa: 8326591: New test JmodExcludedFiles.java fails on Windows when --with-external-symbols-in-bundles=public is used
  • ... and 64 more: https://git.openjdk.org/jdk11u-dev/compare/8b8774d1c65b7535af579f9431a597f51db4f653...master

As there are no conflicts, your changes will automatically be rebased on top of these commits when integrating. If you prefer to avoid this automatic rebasing, please check the documentation for the /integrate command for further details.

As you do not have Committer status in this project an existing Committer must agree to sponsor your change. Possible candidates are the reviewers of this PR (@phohensee) but any other Committer may sponsor as well.

➡️ To flag this PR as ready for integration with the above commit message, type /integrate in a new comment. (Afterwards, your sponsor types /sponsor in a new comment to perform the integration).

@varada1110
Copy link
Author

@jaikiran @GoeLin Could you please review the code?
Thank you,
Varada

@offamitkumar
Copy link
Member

@phohensee would you be able to take a look at this, as you reviewed the head PR as well.

Copy link
Member

@jaikiran jaikiran left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The source changes look OK to me and matches the changes that were done in mainline. The test looks OK too. But do note that I haven't run it against JDK 11u to ascertain that the test work as expected. As long as the test fails without the source changes and passes with the source changes, I think this is fine.

I am not involved in JDK update project, so before integrating, please also have this approved by someone who is involved in JDK updates project.

@varada1110
Copy link
Author

Thank you @jaikiran for reviewing the changes.

@openjdk
Copy link

openjdk bot commented Apr 11, 2024

⚠️ @varada1110 This change is now ready for you to apply for maintainer approval. This can be done directly in each associated issue or by using the /approval command.

@phohensee
Copy link
Member

GHA failures appear infrastructure related.

@varada1110
Copy link
Author

varada1110 commented Apr 15, 2024

/approval request org.junit.jupiter.api is not supported. Therefore, I have added the similar annotations supported by org.junit.*

@openjdk
Copy link

openjdk bot commented Apr 15, 2024

@varada1110 usage: /approval [<id>] (request|cancel) [<text>]

@offamitkumar
Copy link
Member

/approval request The GHA failures seems to be infrastructure-related issues.

no, this is not valid reason for the approval.

You need to mention "why" you want to backport this change, what issue you're fixing here ?

@offamitkumar
Copy link
Member

use it like this : /approval JDK-8305906 request <your reason>

@offamitkumar
Copy link
Member

/approval request org.junit.jupiter.api is not supported. Therefore, I have added the similar annotations supported by org.junit.*

@varada1110 I think instead of editing the comment you need to post a separate new comment, so that bot picks it up again.

@openjdk
Copy link

openjdk bot commented Apr 15, 2024

@offamitkumar Only the author (@varada1110) is allowed to issue the /approval command.

@openjdk
Copy link

openjdk bot commented Apr 15, 2024

@varada1110
8305906: The approval request has been created successfully.

@varada1110
Copy link
Author

/approval JDK-8305906 request org.junit.jupiter.api is not supported. Therefore, I have added the similar annotations supported by org.junit.*

@openjdk openjdk bot added the approval label Apr 15, 2024
@openjdk
Copy link

openjdk bot commented Apr 15, 2024

@varada1110
JDK-8305906: The approval request was already up to date.

@GoeLin
Copy link
Member

GoeLin commented Apr 16, 2024

Hi @varada1110
please explain how you addressed the issues that came up in the 17u backport. Also explain how you tested to show the same issues don't surface in 11.
Please rerun the GHA tests.

Also, we updated jtreg in the meantime. Your changes to the test are probably unnecessary now. Please check and undo them if possible.

@openjdk openjdk bot removed the approval label Apr 16, 2024
@varada1110 varada1110 force-pushed the backport-varada1110-43956686 branch from b192d63 to 9ebcf47 Compare April 18, 2024 09:16
@openjdk
Copy link

openjdk bot commented Apr 18, 2024

@varada1110 Please do not rebase or force-push to an active PR as it invalidates existing review comments. Note for future reference, the bots always squash all changes into a single commit automatically as part of the integration. See OpenJDK Developers’ Guide for more information.

@openjdk openjdk bot added the clean label Apr 18, 2024
@varada1110
Copy link
Author

Hi @varada1110 please explain how you addressed the issues that came up in the 17u backport. Also explain how you tested to show the same issues don't surface in 11. Please rerun the GHA tests.

Also, we updated jtreg in the meantime. Your changes to the test are probably unnecessary now. Please check and undo them if possible.

Hi @GoeLin , initially with the lower jtreg version, org.junit.jupiter.api was not supported and I changed the test to use the supported junit annotations. With the updated jtreg version 7.3, test is passing with the same change made in jdk17u-dev.

@varada1110
Copy link
Author

Hi @GoeLin , Could you please review the code? All checks have passed and test is passing with updated jtreg

@TheRealMDoerr
Copy link
Contributor

This PR is clean and can apply for maintainer approval.

@varada1110
Copy link
Author

/approval JDK-8305906 request test is passing with updated jtreg and PR is clean.

@openjdk
Copy link

openjdk bot commented Jun 3, 2024

@varada1110
JDK-8305906: The approval request has been updated successfully.

@openjdk openjdk bot added approval ready Pull request is ready to be integrated and removed approval labels Jun 3, 2024
@varada1110
Copy link
Author

/integrate

@openjdk openjdk bot added the sponsor Pull request is ready to be sponsored label Jun 3, 2024
@openjdk
Copy link

openjdk bot commented Jun 3, 2024

@varada1110
Your change (at version 9ebcf47) is now ready to be sponsored by a Committer.

@TheRealMDoerr
Copy link
Contributor

/sponsor

@openjdk
Copy link

openjdk bot commented Jun 3, 2024

Going to push as commit b11a980.
Since your change was applied there have been 74 commits pushed to the master branch:

  • 69f4ac1: 8240226: DeflateIn_InflateOut.java test incorrectly assumes size of compressed file
  • 4556aa9: 8317288: [macos] java/awt/Window/Grab/GrabTest.java: Press on the outside area didn't cause ungrab
  • 7b377ac: 8329013: StackOverflowError when starting Apache Tomcat with signed jar
  • 31a780d: 8276819: javax/print/PrintServiceLookup/FlushCustomClassLoader.java fails to free
  • c35d30d: 8331263: Bump update version for OpenJDK: jdk-11.0.25
  • 47fd86c: 8273153: Consolidate file_exists into os:file_exists
  • 8a489e5: 8293887: AArch64 build failure with GCC 12 due to maybe-uninitialized warning in libfdlibm k_rem_pio2.c
  • 3533374: 8312194: test/hotspot/jtreg/applications/ctw/modules/jdk_crypto_ec.java cannot handle empty modules
  • b7596f3: 8316138: Add GlobalSign 2 TLS root certificates
  • b8ee2aa: 8326591: New test JmodExcludedFiles.java fails on Windows when --with-external-symbols-in-bundles=public is used
  • ... and 64 more: https://git.openjdk.org/jdk11u-dev/compare/8b8774d1c65b7535af579f9431a597f51db4f653...master

Your commit was automatically rebased without conflicts.

@openjdk openjdk bot added the integrated Pull request has been integrated label Jun 3, 2024
@openjdk openjdk bot closed this Jun 3, 2024
@openjdk openjdk bot removed ready Pull request is ready to be integrated rfr Pull request is ready for review sponsor Pull request is ready to be sponsored labels Jun 3, 2024
@openjdk
Copy link

openjdk bot commented Jun 3, 2024

@TheRealMDoerr @varada1110 Pushed as commit b11a980.

💡 You may see a message that your pull request was closed with unmerged commits. This can be safely ignored.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
backport clean integrated Pull request has been integrated
Development

Successfully merging this pull request may close these issues.

6 participants