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

8342570: gc.*.gcUntilOld() assumes that full gc always promotes objects to old generation in a generational heap #521

Draft
wants to merge 10 commits into
base: master
Choose a base branch
from

Conversation

ysramakrishna
Copy link
Member

@ysramakrishna ysramakrishna commented Oct 21, 2024

/issue JDK-8342570

Some gc's such as Generational Shenandoah may run in modes where we choose not to (ever) promote objects to the old generation. The tests do not need the assumption of eventual promotion of an object into the old generation in such cases and can be relaxed. A new WhiteBox API is queried by the tests to check for this.

Testing: Ran the tests with all the existing collectors. For existing collectors, there is no change in the tests. For Generational Shenandoah, being the only collector that does not necessarily promote objects to the old generation upon a full gc, we relax that requirement from the tests.


Progress

  • Change must not contain extraneous whitespace
  • Commit message must refer to an issue
  • Change must be properly reviewed (1 review required, with at least 1 Committer)

Issue

  • JDK-8342570: gc.*.gcUntilOld() assumes that full gc always promotes objects to old generation in a generational heap (Sub-task - P4)

Reviewing

Using git

Checkout this PR locally:
$ git fetch https://git.openjdk.org/shenandoah.git pull/521/head:pull/521
$ git checkout pull/521

Update a local copy of the PR:
$ git checkout pull/521
$ git pull https://git.openjdk.org/shenandoah.git pull/521/head

Using Skara CLI tools

Checkout this PR locally:
$ git pr checkout 521

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

Using diff file

Download this PR as a diff file:
https://git.openjdk.org/shenandoah/pull/521.diff

Webrev

Link to Webrev Comment

…jects to old generation in a generational heap
incorrectly placed one at ShenandoahHeap to ShenandoahGenerationalHeap
as originally intended.
collectors can answer "true" to "promotes on full gc" as all objects are
in a single generation (irrespective of what you name it).
@bridgekeeper
Copy link

bridgekeeper bot commented Oct 21, 2024

👋 Welcome back ysr! 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
Copy link

openjdk bot commented Oct 21, 2024

❗ 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 Draft 8342570: gc.*.gcUntilOld() assumes that full gc always promotes objects to old generation in a generational heap Oct 21, 2024
@openjdk
Copy link

openjdk bot commented Oct 21, 2024

@ysramakrishna The primary solved issue for a PR is set through the PR title. Since the current title does not contain an issue reference, it will now be updated.

@ysramakrishna ysramakrishna marked this pull request as ready for review October 26, 2024 08:27
@openjdk openjdk bot added the rfr Pull request is ready for review label Oct 26, 2024
@mlbridge
Copy link

mlbridge bot commented Oct 26, 2024

Webrevs

@ysramakrishna ysramakrishna marked this pull request as draft October 26, 2024 08:48
@openjdk openjdk bot removed the rfr Pull request is ready for review label Oct 26, 2024
@bridgekeeper
Copy link

bridgekeeper bot commented Dec 16, 2024

@ysramakrishna This pull request has been inactive for more than 8 weeks and will be automatically closed if another 8 weeks passes without any activity. To avoid this, simply add a new comment to the pull request. Feel free to ask for assistance if you need help with progressing this pull request towards integration!

@ysramakrishna
Copy link
Member Author

@ysramakrishna This pull request has been inactive for more than 8 weeks and will be automatically closed if another 8 weeks passes without any activity. To avoid this, simply add a new comment to the pull request. Feel free to ask for assistance if you need help with progressing this pull request towards integration!

Commenting to keep alive. I hope to resurrect this in the fullness of time. Leaving it as a zombie draft in the interim. Will be rebased to openjdk/jdk at that time.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Development

Successfully merging this pull request may close these issues.

1 participant