Skip to content

8315130: java.lang.IllegalAccessError when processing classlist to create CDS archive #1835

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

Open
wants to merge 1 commit into
base: pr/1834
Choose a base branch
from

Conversation

TimPushkin
Copy link

@TimPushkin TimPushkin commented May 27, 2025

Fixes a error which significantly complicates the use of static CDS in some applications with user-provided class loaders (workarounds require either manually editing the generated CDS classlist which is error-prone, or switching to dynamic CDS which has its own implications, or rewriting the application which is not always possible).

The conflicts were trivial: a few neighboring methods missing from this version and not directly related to the change.

The PR depends on #1833 and #1834 though it can be rewritten not to if needed.

Testing besides the CI (performed on macos/arm64): runtime/cds, a minimal reproducer app described in the original bug report.


Progress

  • Change must be properly reviewed (1 review required, with at least 1 Reviewer)
  • Change must not contain extraneous whitespace
  • Commit message must refer to an issue
  • JDK-8315130 needs maintainer approval

Integration blocker

 ⚠️ Dependency #1834 must be integrated first

Issue

  • JDK-8315130: java.lang.IllegalAccessError when processing classlist to create CDS archive (Bug - P4)

Reviewing

Using git

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

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

Using Skara CLI tools

Checkout this PR locally:
$ git pr checkout 1835

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

Using diff file

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

Using Webrev

Link to Webrev Comment

…eate CDS archive

Reviewed-by: iklam, ccheung
@bridgekeeper
Copy link

bridgekeeper bot commented May 27, 2025

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

@openjdk
Copy link

openjdk bot commented May 27, 2025

❗ This change is not yet ready to be integrated.
See the Progress checklist in the description for automated requirements.

@openjdk openjdk bot changed the title Backport 46a12e781edcbe9da7bd39eb9e101fc680053cef 8315130: java.lang.IllegalAccessError when processing classlist to create CDS archive May 27, 2025
@openjdk
Copy link

openjdk bot commented May 27, 2025

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 May 27, 2025
@mlbridge
Copy link

mlbridge bot commented May 27, 2025

Webrevs

@bridgekeeper
Copy link

bridgekeeper bot commented Jun 24, 2025

@TimPushkin This pull request has been inactive for more than 4 weeks and will be automatically closed if another 4 weeks passes without any activity. To avoid this, simply issue a /touch or /keepalive command to the pull request. Feel free to ask for assistance if you need help with progressing this pull request towards integration!

@TimPushkin
Copy link
Author

/touch

Waiting for review

@openjdk
Copy link

openjdk bot commented Jun 24, 2025

@TimPushkin The pull request is being re-evaluated and the inactivity timeout has been reset.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
backport rfr Pull request is ready for review
Development

Successfully merging this pull request may close these issues.

1 participant