• Home
    • View
    • Login
    This page
    • Normal
    • Export PDF
    • Page Information

    Loading...
  1. Dashboard
  2. Undefined Space
  3. JDK Updates
  4. How to contribute a fix to OpenJDK 11 Updates

How to contribute a fix to OpenJDK 11 Updates

  • Created by Christoph Langer, last modified on Apr 01, 2019

Most commonly, a change for OpenJDK 11 updates is a backport of a change that has been made in a higher OpenJDK version.
There are a few cases though, where a net new change for OpenJDK 11 updates needs to be made, e.g. because
a fix would not apply to higher OpenJDK versions that are in maintenance.

For the common case of a backport, here is the detailed recipe of what to do:
1. Check the original JBS issue on https://bugs.openjdk.java.net/
    - Carefully check linked issues whether there are follow-up fixes that need to be brought with the backport.
    - If there are relevant issues that prevent clean backport, consider backporting those first (within reason).
    - Open the link to the original commit and note its repository and changeset number.
2. Export the original commit from the original repository, e.g. by "hg export -r <changeset number> --git > <bugid>.patch
3. Apply the exported patch to the target repository (mostly jdk11u-dev), e.g. by using the mercurial mq extension: "hg qimport <bugid>.patch && hg qpush"
    - This approach will make sure that the changeset metadata is kept (original authors, Reviewed-by lines, etc.)
    - Resolve the patch and make necessary adaptions if it doesn't apply cleanly.
4. Test the patch
    - "tier1" tests should be passing at all times.
    - Run tests from the area that the patch affects.
    - New regression tests that come with the patch should pass.
5. If the original patch was modified, get the change reviewed on the mailing list.
    - It is advised to do the review at the jdk-updates-dev mailing list and optionally cc the original mailing list.
    - The mail subject should begin with "[11u]". It is helpful to state what changes were needed and why.
6. Request and await approval for the fix.
    - Put the jdk11u-fix-request tag and add a "Fix Request" comment on the issue, that explains why the fix should be backported, what testing was done, a risk estimate, etc.
    - Wait for maintainer approval, which would manifest as jdk11u-fix-yes tag on the issue.
7. If the change needs a CSR?
    - Manually create a backport issue in JBS, targeted to 11-pool. This issue will be resolved when the change is pushed.
    - From that 11-pool issue, create a new CSR and copy/paste the contents from the original CSR, making adaptions as necessary. The new CSR should also have version 11-pool.
    - Run the CSR through its process to get it approved.
8. If and only if everything is approved, push the change.

In case you need to do a net new patch, specific to OpenJDK 11 updates, you need to create a JBS bug and start the above recipe from step 4.

If you are no OpenJDK author, that is, you don't have a JBS user account, you'll have to ask for help (e.g. on the mailing list) for step 6 and 7.
If you are no jdk-updates committer, you'll have to do the same for step 8.

Overview
Content Tools
ThemeBuilder
  • No labels

Terms of Use
• License: GPLv2
• Privacy • Trademarks • Contact Us

Powered by a free Atlassian Confluence Open Source Project License granted to https://www.atlassian.com/software/views/opensource-community-additional-license-offer. Evaluate Confluence today.

  • Kolekti ThemeBuilder Powered by Atlassian Confluence 8.5.23
  • Kolekti ThemeBuilder printed.by.atlassian.confluence
  • Report a bug
  • Atlassian News
Atlassian
Kolekti ThemeBuilder EngineAtlassian Confluence
{"serverDuration": 155, "requestCorrelationId": "6137070e899fa8be"}