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

Set TieredStopAtLevel=1 on JDK 21. #17456

Closed
wants to merge 2 commits into from
Closed

Conversation

gianm
Copy link
Contributor

@gianm gianm commented Nov 6, 2024

Attempting to work around #17429.

@gianm
Copy link
Contributor Author

gianm commented Nov 6, 2024

There's some error in DecoupledPlanningCalciteNestedDataQueryTest.testReturningAndSumPathDouble ending in this chain. The root exception is VirtualMachineError: Out of space in CodeCache for method handle intrinsic:

Caused by: java.lang.NoSuchMethodException: no such method: java.lang.invoke.MethodHandle.linkToSpecial(Object,Object,Object,Object,Object,Object,Object,int,Object,MemberName)void/invokeStatic
	at java.base/java.lang.invoke.MemberName.makeAccessException(MemberName.java:915)
	at java.base/java.lang.invoke.MemberName$Factory.resolveOrFail(MemberName.java:994)
	at java.base/java.lang.invoke.DirectMethodHandle.makePreparedLambdaForm(DirectMethodHandle.java:261)
	... 112 more
Caused by: java.lang.NoSuchMethodError: 'void java.lang.invoke.MethodHandle.linkToSpecial(java.lang.Object, java.lang.Object, java.lang.Object, java.lang.Object, java.lang.Object, java.lang.Object, java.lang.Object, int, java.lang.Object, java.lang.invoke.MemberName)'
	at java.base/java.lang.invoke.MethodHandleNatives.resolve(Native Method)
	at java.base/java.lang.invoke.MemberName$Factory.resolve(MemberName.java:962)
	at java.base/java.lang.invoke.MemberName$Factory.resolveOrFail(MemberName.java:991)
	... 113 more
Caused by: java.lang.VirtualMachineError: Out of space in CodeCache for method handle intrinsic
	... 116 more

After that, there's a ton of StupidPool errors due to leaks being detected. There must be some cleanup code somewhere that catches Exception rather than Throwable, so this Error causes a leak. The VirtualMachineError is the real problem though.

@gianm
Copy link
Contributor Author

gianm commented Nov 6, 2024

I've attempted to work around the above problem by setting -XX:ReservedCodeCacheSize=512m. On my local machine at least, the default is 200m, so this would be about double. (assuming the CI machine has the same default)

Copy link
Member

@kgyrtkirk kgyrtkirk left a comment

Choose a reason for hiding this comment

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

I've tried the same steps I was able to repro the issue earlier and it didn't happened
some tests were 2/3 times slower...but that's kinda expected
overall: instead of 3:55 it took 11:36 to run the same set of tests
+1

@gianm
Copy link
Contributor Author

gianm commented Nov 7, 2024

Now a quidem test is failing with:

*** java.lang.instrument ASSERTION FAILED ***: "!errorOutstanding" with message transform method call failed at src/java.instrument/share/native/libinstrument/JPLISAgent.c line: 884

Maybe JDK 21 is too buggy 😛

@gianm
Copy link
Contributor Author

gianm commented Nov 7, 2024

Closing, this doesn't seem like the right path.

@gianm gianm closed this Nov 7, 2024
@gianm gianm deleted the jdk21-c1 branch November 7, 2024 06:39
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants