...
- 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.
- Export the original commit from the original repository
- Locally:
"hg export -r <changeset number> --git > <bugid>.patch"
- From the remote repo:
"wget https://hg.openjdk.java.net/jdk/jdk/raw-rev/<changeset-id> > -O <bugid>.patch"
- Locally:
- Apply the exported patch to the target repository (mostly jdk11u-dev):
- Make sure that the changeset metadata is kept (original authors, Reviewed-by lines, etc.)
- Most convenient to use Mercurial mq extension:
"hg qimport <bugid>.patch && hg qpush"
- Resolve the patch and make necessary adaptions if it doesn't apply cleanly.
- Test the patch
- "tier1" tests should be passing at all times, use
"make run-test TEST=tier1"
to run - Run tests from the area that the patch affects, use
"make run-test TEST=<path-to-tests>"
to run specific tests - New regression tests that come with the patch should pass
- "tier1" tests should be passing at all times, use
- 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 review request should be clearly marked as such:
"
[11u] RFR <original-bug-id>: <synopsis>"
- It is helpful to state what changes were needed and why: the difference against original patch, motivations doing things differently, etc.
- 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.
- Put the
- What 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.
- Manually create a backport issue in JBS, targeted to
- If and only if everything is approved, push the change.
...
Overview
Content Tools
ThemeBuilder