[ 
https://issues.apache.org/jira/browse/CASSANDRA-18831?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17853174#comment-17853174
 ] 

Josh McKenzie commented on CASSANDRA-18831:
-------------------------------------------

Have a WIP branch 
[here|https://github.com/jmckenzie-dev/cassandra/commit/ed05999dd79e17c5c790e974270b8cf7eea8fab3]

Currently builds and runs all in-jvm unit and dtests and passes excepting 3 or 
4 of them depending on the run.

A few of the dependencies are ea builds and required quite recent changes to 
work / pass tests; mostly in the mockito / chronicle space. They may have gone 
GA since I updated them to work a week or two ago; figure we can revisit those 
once we get closer to merging this upstream to trunk and formalizing the JDK 
support changeover.

There's a smattering of {{TODO}} unique to this commit that definitely will 
need to be worked through as well (potential duplication of params in 
{{{}build.xml{}}}, formalizing construction choice in {{{}ObjectSizes{}}}, 
etc), but nothing that should provide a problem to anyone wanting to toy with 
the branch.

It looks like {{.measureDeep()}} on {{{}ConcurrentHashMap{}}}'s are giving us 
size of the {{WeakReference}} and not following them even though we have 
{{measureNonStrongReferences()}} specified during construction of the 
{{{}MemoryMeter{}}}. I ran through all the unit tests in jamm w/JDK21 and the 
only one that failed was hard-coded w/some assumptions about the internals of 
data structures in the JDK, so I'm _assuming_ that things aren't horrendously 
broken there. Probably warrants more investigation.

I plan to get to 0 failures on in-jvm tests (unit and d) and then doing some 
benchmarking work on ZGC configuration and such w/easy-cass-stress to see how 
things look.

[~clohfink] you mentioned wanting to tinker w/virtual threads; this branch is 
probably in a state where you could do that now, though I wouldn't swear by how 
ZGC is currently configured.

[~e.dimitrova] you'd mentioned wanting to do some testing on this or JDK22; 
here you go. :)

I'll update the branch once I have those last few tests passing as well as with 
results of benchmarking.

> Enable Cassandra to build and run under JDK21
> ---------------------------------------------
>
>                 Key: CASSANDRA-18831
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-18831
>             Project: Cassandra
>          Issue Type: Task
>          Components: Build
>            Reporter: Achilles Benetopoulos
>            Assignee: Josh McKenzie
>            Priority: Normal
>             Fix For: 5.x
>
>         Attachments: jdk21-patch
>
>
> This patch builds on the work in CASSANDRA-16895 that added JDK17 to the list 
> of supported Java versions, and extends that work to enable building and 
> running Cassandra under JDK21.
> The following commits comprise the changes included in the attached patch:
>  - 
> [https://github.com/apache/cassandra/commit/b15d4d6980e787ab5f3405ca8cb17a9c92a4aa47]
>  - 
> [https://github.com/apache/cassandra/commit/0c5df38dafe58bfec8924e81507bb604e1543897]
>  - 
> [https://github.com/apache/cassandra/commit/6506b7279d98eed4b2b65b71e0c6f41eb78c6913]
>  - 
> [https://github.com/apache/cassandra/commit/564cbd534c5a975cda0c629c14c68c8745b41451]



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to