[jira] [Commented] (CASSANDRA-19567) Minimize the heap consumption when registering metrics
[ https://issues.apache.org/jira/browse/CASSANDRA-19567?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17842442#comment-17842442 ] Caleb Rackliffe commented on CASSANDRA-19567: - +1 LGTM Thanks for the patch! > Minimize the heap consumption when registering metrics > -- > > Key: CASSANDRA-19567 > URL: https://issues.apache.org/jira/browse/CASSANDRA-19567 > Project: Cassandra > Issue Type: Bug > Components: Observability/Metrics >Reporter: Maxim Muzafarov >Assignee: Maxim Muzafarov >Priority: Normal > Fix For: 5.1 > > Attachments: ci_summary.html, summary.png > > Time Spent: 2h 40m > Remaining Estimate: 0h > > The problem is only reproducible on the x86 machine, the problem is not > reproducible on the arm64. A quick analysis showed a lot of MetricName > objects stored in the heap, although the real cause could be related to > something else, the MetricName object requires extra attention. > To reproduce run the command run locally: > {code} > ant test-jvm-dtest-some > -Dtest.name=org.apache.cassandra.distributed.test.ReadRepairTest > {code} > The error: > {code:java} > [junit-timeout] Exception in thread "main" java.lang.OutOfMemoryError: Java > heap space > [junit-timeout] at > java.base/java.lang.StringLatin1.newString(StringLatin1.java:769) > [junit-timeout] at > java.base/java.lang.StringBuffer.toString(StringBuffer.java:716) > [junit-timeout] at > org.apache.cassandra.CassandraBriefJUnitResultFormatter.endTestSuite(CassandraBriefJUnitResultFormatter.java:191) > [junit-timeout] at > org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.fireEndTestSuite(JUnitTestRunner.java:854) > [junit-timeout] at > org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.run(JUnitTestRunner.java:578) > [junit-timeout] at > org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.launch(JUnitTestRunner.java:1197) > [junit-timeout] at > org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.main(JUnitTestRunner.java:1042) > [junit-timeout] Testsuite: > org.apache.cassandra.distributed.test.ReadRepairTest-cassandra.testtag_IS_UNDEFINED > [junit-timeout] Testsuite: > org.apache.cassandra.distributed.test.ReadRepairTest-cassandra.testtag_IS_UNDEFINED > Tests run: 1, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 0 sec > [junit-timeout] > [junit-timeout] Testcase: > org.apache.cassandra.distributed.test.ReadRepairTest:readRepairRTRangeMovementTest-cassandra.testtag_IS_UNDEFINED: > Caused an ERROR > [junit-timeout] Forked Java VM exited abnormally. Please note the time in the > report does not reflect the time until the VM exit. > [junit-timeout] junit.framework.AssertionFailedError: Forked Java VM exited > abnormally. Please note the time in the report does not reflect the time > until the VM exit. > [junit-timeout] at > jdk.internal.reflect.GeneratedMethodAccessor4.invoke(Unknown Source) > [junit-timeout] at > java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) > [junit-timeout] at java.base/java.util.Vector.forEach(Vector.java:1365) > [junit-timeout] at > jdk.internal.reflect.GeneratedMethodAccessor4.invoke(Unknown Source) > [junit-timeout] at > java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) > [junit-timeout] at > jdk.internal.reflect.GeneratedMethodAccessor4.invoke(Unknown Source) > [junit-timeout] at > java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) > [junit-timeout] at java.base/java.util.Vector.forEach(Vector.java:1365) > [junit-timeout] at > jdk.internal.reflect.GeneratedMethodAccessor4.invoke(Unknown Source) > [junit-timeout] at > java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) > [junit-timeout] at > jdk.internal.reflect.GeneratedMethodAccessor4.invoke(Unknown Source) > [junit-timeout] at > java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) > [junit-timeout] > [junit-timeout] > [junit-timeout] Test org.apache.cassandra.distributed.test.ReadRepairTest > FAILED (crashed)BUILD FAILED > {code} -- This message was sent by Atlassian Jira (v8.20.10#820010) - To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org For additional commands, e-mail: commits-h...@cassandra.apache.org
[jira] [Commented] (CASSANDRA-19567) Minimize the heap consumption when registering metrics
[ https://issues.apache.org/jira/browse/CASSANDRA-19567?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17842356#comment-17842356 ] Caleb Rackliffe commented on CASSANDRA-19567: - CI on the latest version of the patch [looks clean|^ci_summary.html] . > Minimize the heap consumption when registering metrics > -- > > Key: CASSANDRA-19567 > URL: https://issues.apache.org/jira/browse/CASSANDRA-19567 > Project: Cassandra > Issue Type: Bug > Components: Observability/Metrics >Reporter: Maxim Muzafarov >Assignee: Maxim Muzafarov >Priority: Normal > Fix For: 5.1 > > Attachments: ci_summary.html, summary.png > > Time Spent: 2h 10m > Remaining Estimate: 0h > > The problem is only reproducible on the x86 machine, the problem is not > reproducible on the arm64. A quick analysis showed a lot of MetricName > objects stored in the heap, although the real cause could be related to > something else, the MetricName object requires extra attention. > To reproduce run the command run locally: > {code} > ant test-jvm-dtest-some > -Dtest.name=org.apache.cassandra.distributed.test.ReadRepairTest > {code} > The error: > {code:java} > [junit-timeout] Exception in thread "main" java.lang.OutOfMemoryError: Java > heap space > [junit-timeout] at > java.base/java.lang.StringLatin1.newString(StringLatin1.java:769) > [junit-timeout] at > java.base/java.lang.StringBuffer.toString(StringBuffer.java:716) > [junit-timeout] at > org.apache.cassandra.CassandraBriefJUnitResultFormatter.endTestSuite(CassandraBriefJUnitResultFormatter.java:191) > [junit-timeout] at > org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.fireEndTestSuite(JUnitTestRunner.java:854) > [junit-timeout] at > org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.run(JUnitTestRunner.java:578) > [junit-timeout] at > org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.launch(JUnitTestRunner.java:1197) > [junit-timeout] at > org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.main(JUnitTestRunner.java:1042) > [junit-timeout] Testsuite: > org.apache.cassandra.distributed.test.ReadRepairTest-cassandra.testtag_IS_UNDEFINED > [junit-timeout] Testsuite: > org.apache.cassandra.distributed.test.ReadRepairTest-cassandra.testtag_IS_UNDEFINED > Tests run: 1, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 0 sec > [junit-timeout] > [junit-timeout] Testcase: > org.apache.cassandra.distributed.test.ReadRepairTest:readRepairRTRangeMovementTest-cassandra.testtag_IS_UNDEFINED: > Caused an ERROR > [junit-timeout] Forked Java VM exited abnormally. Please note the time in the > report does not reflect the time until the VM exit. > [junit-timeout] junit.framework.AssertionFailedError: Forked Java VM exited > abnormally. Please note the time in the report does not reflect the time > until the VM exit. > [junit-timeout] at > jdk.internal.reflect.GeneratedMethodAccessor4.invoke(Unknown Source) > [junit-timeout] at > java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) > [junit-timeout] at java.base/java.util.Vector.forEach(Vector.java:1365) > [junit-timeout] at > jdk.internal.reflect.GeneratedMethodAccessor4.invoke(Unknown Source) > [junit-timeout] at > java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) > [junit-timeout] at > jdk.internal.reflect.GeneratedMethodAccessor4.invoke(Unknown Source) > [junit-timeout] at > java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) > [junit-timeout] at java.base/java.util.Vector.forEach(Vector.java:1365) > [junit-timeout] at > jdk.internal.reflect.GeneratedMethodAccessor4.invoke(Unknown Source) > [junit-timeout] at > java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) > [junit-timeout] at > jdk.internal.reflect.GeneratedMethodAccessor4.invoke(Unknown Source) > [junit-timeout] at > java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) > [junit-timeout] > [junit-timeout] > [junit-timeout] Test org.apache.cassandra.distributed.test.ReadRepairTest > FAILED (crashed)BUILD FAILED > {code} -- This message was sent by Atlassian Jira (v8.20.10#820010) - To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org For additional commands, e-mail: commits-h...@cassandra.apache.org
[jira] [Commented] (CASSANDRA-19567) Minimize the heap consumption when registering metrics
[ https://issues.apache.org/jira/browse/CASSANDRA-19567?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17842035#comment-17842035 ] Maxim Muzafarov commented on CASSANDRA-19567: - I've fixed all the comments and the failed tests. The changes are here: https://github.com/apache/cassandra/pull/3267 Additionally, I've prepared a branch that contains a new assertion on a metric remove operation to ensure the contract. As I previously mentioned, this assertion can be tricky as I assume some of the metrics with the same name can be removed in parallel, it shouldn't happen in a normal way, but it could because of the lack of tests and/or parallel removal the same metrics e.g. Memtables share the same instances of metrics. Anyway, the same as above changes, but with an assertion are here: https://github.com/Mmuzaf/cassandra/tree/cassandra-19567-assert I'll check that. > Minimize the heap consumption when registering metrics > -- > > Key: CASSANDRA-19567 > URL: https://issues.apache.org/jira/browse/CASSANDRA-19567 > Project: Cassandra > Issue Type: Bug > Components: Observability/Metrics >Reporter: Maxim Muzafarov >Assignee: Maxim Muzafarov >Priority: Normal > Fix For: 5.x > > Attachments: summary.png > > Time Spent: 2h 10m > Remaining Estimate: 0h > > The problem is only reproducible on the x86 machine, the problem is not > reproducible on the arm64. A quick analysis showed a lot of MetricName > objects stored in the heap, although the real cause could be related to > something else, the MetricName object requires extra attention. > To reproduce run the command run locally: > {code} > ant test-jvm-dtest-some > -Dtest.name=org.apache.cassandra.distributed.test.ReadRepairTest > {code} > The error: > {code:java} > [junit-timeout] Exception in thread "main" java.lang.OutOfMemoryError: Java > heap space > [junit-timeout] at > java.base/java.lang.StringLatin1.newString(StringLatin1.java:769) > [junit-timeout] at > java.base/java.lang.StringBuffer.toString(StringBuffer.java:716) > [junit-timeout] at > org.apache.cassandra.CassandraBriefJUnitResultFormatter.endTestSuite(CassandraBriefJUnitResultFormatter.java:191) > [junit-timeout] at > org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.fireEndTestSuite(JUnitTestRunner.java:854) > [junit-timeout] at > org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.run(JUnitTestRunner.java:578) > [junit-timeout] at > org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.launch(JUnitTestRunner.java:1197) > [junit-timeout] at > org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.main(JUnitTestRunner.java:1042) > [junit-timeout] Testsuite: > org.apache.cassandra.distributed.test.ReadRepairTest-cassandra.testtag_IS_UNDEFINED > [junit-timeout] Testsuite: > org.apache.cassandra.distributed.test.ReadRepairTest-cassandra.testtag_IS_UNDEFINED > Tests run: 1, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 0 sec > [junit-timeout] > [junit-timeout] Testcase: > org.apache.cassandra.distributed.test.ReadRepairTest:readRepairRTRangeMovementTest-cassandra.testtag_IS_UNDEFINED: > Caused an ERROR > [junit-timeout] Forked Java VM exited abnormally. Please note the time in the > report does not reflect the time until the VM exit. > [junit-timeout] junit.framework.AssertionFailedError: Forked Java VM exited > abnormally. Please note the time in the report does not reflect the time > until the VM exit. > [junit-timeout] at > jdk.internal.reflect.GeneratedMethodAccessor4.invoke(Unknown Source) > [junit-timeout] at > java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) > [junit-timeout] at java.base/java.util.Vector.forEach(Vector.java:1365) > [junit-timeout] at > jdk.internal.reflect.GeneratedMethodAccessor4.invoke(Unknown Source) > [junit-timeout] at > java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) > [junit-timeout] at > jdk.internal.reflect.GeneratedMethodAccessor4.invoke(Unknown Source) > [junit-timeout] at > java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) > [junit-timeout] at java.base/java.util.Vector.forEach(Vector.java:1365) > [junit-timeout] at > jdk.internal.reflect.GeneratedMethodAccessor4.invoke(Unknown Source) > [junit-timeout] at > java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) > [junit-timeout] at > jdk.internal.reflect.GeneratedMethodAccessor4.invoke(Unknown Source) > [junit-timeout] at >
[jira] [Commented] (CASSANDRA-19567) Minimize the heap consumption when registering metrics
[ https://issues.apache.org/jira/browse/CASSANDRA-19567?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17840873#comment-17840873 ] Caleb Rackliffe commented on CASSANDRA-19567: - Finished my first round of review, and left comments in the PR. Using {{removeMatching()}} definitely simplifies the removal plumbing. > Minimize the heap consumption when registering metrics > -- > > Key: CASSANDRA-19567 > URL: https://issues.apache.org/jira/browse/CASSANDRA-19567 > Project: Cassandra > Issue Type: Bug > Components: Observability/Metrics >Reporter: Maxim Muzafarov >Assignee: Maxim Muzafarov >Priority: Normal > Fix For: 5.x > > Attachments: summary.png > > Time Spent: 1.5h > Remaining Estimate: 0h > > The problem is only reproducible on the x86 machine, the problem is not > reproducible on the arm64. A quick analysis showed a lot of MetricName > objects stored in the heap, although the real cause could be related to > something else, the MetricName object requires extra attention. > To reproduce run the command run locally: > {code} > ant test-jvm-dtest-some > -Dtest.name=org.apache.cassandra.distributed.test.ReadRepairTest > {code} > The error: > {code:java} > [junit-timeout] Exception in thread "main" java.lang.OutOfMemoryError: Java > heap space > [junit-timeout] at > java.base/java.lang.StringLatin1.newString(StringLatin1.java:769) > [junit-timeout] at > java.base/java.lang.StringBuffer.toString(StringBuffer.java:716) > [junit-timeout] at > org.apache.cassandra.CassandraBriefJUnitResultFormatter.endTestSuite(CassandraBriefJUnitResultFormatter.java:191) > [junit-timeout] at > org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.fireEndTestSuite(JUnitTestRunner.java:854) > [junit-timeout] at > org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.run(JUnitTestRunner.java:578) > [junit-timeout] at > org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.launch(JUnitTestRunner.java:1197) > [junit-timeout] at > org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.main(JUnitTestRunner.java:1042) > [junit-timeout] Testsuite: > org.apache.cassandra.distributed.test.ReadRepairTest-cassandra.testtag_IS_UNDEFINED > [junit-timeout] Testsuite: > org.apache.cassandra.distributed.test.ReadRepairTest-cassandra.testtag_IS_UNDEFINED > Tests run: 1, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 0 sec > [junit-timeout] > [junit-timeout] Testcase: > org.apache.cassandra.distributed.test.ReadRepairTest:readRepairRTRangeMovementTest-cassandra.testtag_IS_UNDEFINED: > Caused an ERROR > [junit-timeout] Forked Java VM exited abnormally. Please note the time in the > report does not reflect the time until the VM exit. > [junit-timeout] junit.framework.AssertionFailedError: Forked Java VM exited > abnormally. Please note the time in the report does not reflect the time > until the VM exit. > [junit-timeout] at > jdk.internal.reflect.GeneratedMethodAccessor4.invoke(Unknown Source) > [junit-timeout] at > java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) > [junit-timeout] at java.base/java.util.Vector.forEach(Vector.java:1365) > [junit-timeout] at > jdk.internal.reflect.GeneratedMethodAccessor4.invoke(Unknown Source) > [junit-timeout] at > java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) > [junit-timeout] at > jdk.internal.reflect.GeneratedMethodAccessor4.invoke(Unknown Source) > [junit-timeout] at > java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) > [junit-timeout] at java.base/java.util.Vector.forEach(Vector.java:1365) > [junit-timeout] at > jdk.internal.reflect.GeneratedMethodAccessor4.invoke(Unknown Source) > [junit-timeout] at > java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) > [junit-timeout] at > jdk.internal.reflect.GeneratedMethodAccessor4.invoke(Unknown Source) > [junit-timeout] at > java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) > [junit-timeout] > [junit-timeout] > [junit-timeout] Test org.apache.cassandra.distributed.test.ReadRepairTest > FAILED (crashed)BUILD FAILED > {code} -- This message was sent by Atlassian Jira (v8.20.10#820010) - To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org For additional commands, e-mail: commits-h...@cassandra.apache.org
[jira] [Commented] (CASSANDRA-19567) Minimize the heap consumption when registering metrics
[ https://issues.apache.org/jira/browse/CASSANDRA-19567?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17840203#comment-17840203 ] Caleb Rackliffe commented on CASSANDRA-19567: - That looks promising. Reviewing shortly... > Minimize the heap consumption when registering metrics > -- > > Key: CASSANDRA-19567 > URL: https://issues.apache.org/jira/browse/CASSANDRA-19567 > Project: Cassandra > Issue Type: Bug > Components: Observability/Metrics >Reporter: Maxim Muzafarov >Assignee: Maxim Muzafarov >Priority: Normal > Fix For: 5.x > > Attachments: summary.png > > Time Spent: 10m > Remaining Estimate: 0h > > The problem is only reproducible on the x86 machine, the problem is not > reproducible on the arm64. A quick analysis showed a lot of MetricName > objects stored in the heap, although the real cause could be related to > something else, the MetricName object requires extra attention. > To reproduce run the command run locally: > {code} > ant test-jvm-dtest-some > -Dtest.name=org.apache.cassandra.distributed.test.ReadRepairTest > {code} > The error: > {code:java} > [junit-timeout] Exception in thread "main" java.lang.OutOfMemoryError: Java > heap space > [junit-timeout] at > java.base/java.lang.StringLatin1.newString(StringLatin1.java:769) > [junit-timeout] at > java.base/java.lang.StringBuffer.toString(StringBuffer.java:716) > [junit-timeout] at > org.apache.cassandra.CassandraBriefJUnitResultFormatter.endTestSuite(CassandraBriefJUnitResultFormatter.java:191) > [junit-timeout] at > org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.fireEndTestSuite(JUnitTestRunner.java:854) > [junit-timeout] at > org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.run(JUnitTestRunner.java:578) > [junit-timeout] at > org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.launch(JUnitTestRunner.java:1197) > [junit-timeout] at > org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.main(JUnitTestRunner.java:1042) > [junit-timeout] Testsuite: > org.apache.cassandra.distributed.test.ReadRepairTest-cassandra.testtag_IS_UNDEFINED > [junit-timeout] Testsuite: > org.apache.cassandra.distributed.test.ReadRepairTest-cassandra.testtag_IS_UNDEFINED > Tests run: 1, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 0 sec > [junit-timeout] > [junit-timeout] Testcase: > org.apache.cassandra.distributed.test.ReadRepairTest:readRepairRTRangeMovementTest-cassandra.testtag_IS_UNDEFINED: > Caused an ERROR > [junit-timeout] Forked Java VM exited abnormally. Please note the time in the > report does not reflect the time until the VM exit. > [junit-timeout] junit.framework.AssertionFailedError: Forked Java VM exited > abnormally. Please note the time in the report does not reflect the time > until the VM exit. > [junit-timeout] at > jdk.internal.reflect.GeneratedMethodAccessor4.invoke(Unknown Source) > [junit-timeout] at > java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) > [junit-timeout] at java.base/java.util.Vector.forEach(Vector.java:1365) > [junit-timeout] at > jdk.internal.reflect.GeneratedMethodAccessor4.invoke(Unknown Source) > [junit-timeout] at > java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) > [junit-timeout] at > jdk.internal.reflect.GeneratedMethodAccessor4.invoke(Unknown Source) > [junit-timeout] at > java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) > [junit-timeout] at java.base/java.util.Vector.forEach(Vector.java:1365) > [junit-timeout] at > jdk.internal.reflect.GeneratedMethodAccessor4.invoke(Unknown Source) > [junit-timeout] at > java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) > [junit-timeout] at > jdk.internal.reflect.GeneratedMethodAccessor4.invoke(Unknown Source) > [junit-timeout] at > java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) > [junit-timeout] > [junit-timeout] > [junit-timeout] Test org.apache.cassandra.distributed.test.ReadRepairTest > FAILED (crashed)BUILD FAILED > {code} -- This message was sent by Atlassian Jira (v8.20.10#820010) - To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org For additional commands, e-mail: commits-h...@cassandra.apache.org
[jira] [Commented] (CASSANDRA-19567) Minimize the heap consumption when registering metrics
[ https://issues.apache.org/jira/browse/CASSANDRA-19567?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17839260#comment-17839260 ] Maxim Muzafarov commented on CASSANDRA-19567: - !summary.png|width=900! > Minimize the heap consumption when registering metrics > -- > > Key: CASSANDRA-19567 > URL: https://issues.apache.org/jira/browse/CASSANDRA-19567 > Project: Cassandra > Issue Type: Bug > Components: Observability/Metrics >Reporter: Maxim Muzafarov >Assignee: Maxim Muzafarov >Priority: Normal > Fix For: 5.x > > Attachments: summary.png > > Time Spent: 10m > Remaining Estimate: 0h > > The problem is only reproducible on the x86 machine, the problem is not > reproducible on the arm64. A quick analysis showed a lot of MetricName > objects stored in the heap, although the real cause could be related to > something else, the MetricName object requires extra attention. > To reproduce run the command run locally: > {code} > ant test-jvm-dtest-some > -Dtest.name=org.apache.cassandra.distributed.test.ReadRepairTest > {code} > The error: > {code:java} > [junit-timeout] Exception in thread "main" java.lang.OutOfMemoryError: Java > heap space > [junit-timeout] at > java.base/java.lang.StringLatin1.newString(StringLatin1.java:769) > [junit-timeout] at > java.base/java.lang.StringBuffer.toString(StringBuffer.java:716) > [junit-timeout] at > org.apache.cassandra.CassandraBriefJUnitResultFormatter.endTestSuite(CassandraBriefJUnitResultFormatter.java:191) > [junit-timeout] at > org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.fireEndTestSuite(JUnitTestRunner.java:854) > [junit-timeout] at > org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.run(JUnitTestRunner.java:578) > [junit-timeout] at > org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.launch(JUnitTestRunner.java:1197) > [junit-timeout] at > org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.main(JUnitTestRunner.java:1042) > [junit-timeout] Testsuite: > org.apache.cassandra.distributed.test.ReadRepairTest-cassandra.testtag_IS_UNDEFINED > [junit-timeout] Testsuite: > org.apache.cassandra.distributed.test.ReadRepairTest-cassandra.testtag_IS_UNDEFINED > Tests run: 1, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 0 sec > [junit-timeout] > [junit-timeout] Testcase: > org.apache.cassandra.distributed.test.ReadRepairTest:readRepairRTRangeMovementTest-cassandra.testtag_IS_UNDEFINED: > Caused an ERROR > [junit-timeout] Forked Java VM exited abnormally. Please note the time in the > report does not reflect the time until the VM exit. > [junit-timeout] junit.framework.AssertionFailedError: Forked Java VM exited > abnormally. Please note the time in the report does not reflect the time > until the VM exit. > [junit-timeout] at > jdk.internal.reflect.GeneratedMethodAccessor4.invoke(Unknown Source) > [junit-timeout] at > java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) > [junit-timeout] at java.base/java.util.Vector.forEach(Vector.java:1365) > [junit-timeout] at > jdk.internal.reflect.GeneratedMethodAccessor4.invoke(Unknown Source) > [junit-timeout] at > java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) > [junit-timeout] at > jdk.internal.reflect.GeneratedMethodAccessor4.invoke(Unknown Source) > [junit-timeout] at > java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) > [junit-timeout] at java.base/java.util.Vector.forEach(Vector.java:1365) > [junit-timeout] at > jdk.internal.reflect.GeneratedMethodAccessor4.invoke(Unknown Source) > [junit-timeout] at > java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) > [junit-timeout] at > jdk.internal.reflect.GeneratedMethodAccessor4.invoke(Unknown Source) > [junit-timeout] at > java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) > [junit-timeout] > [junit-timeout] > [junit-timeout] Test org.apache.cassandra.distributed.test.ReadRepairTest > FAILED (crashed)BUILD FAILED > {code} -- This message was sent by Atlassian Jira (v8.20.10#820010) - To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org For additional commands, e-mail: commits-h...@cassandra.apache.org
[jira] [Commented] (CASSANDRA-19567) Minimize the heap consumption when registering metrics
[ https://issues.apache.org/jira/browse/CASSANDRA-19567?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17838546#comment-17838546 ] Sam Tunnicliffe commented on CASSANDRA-19567: - bq. The problem is only reproducible on the x86 machine, the problem is not reproducible on the arm64. We've observed the increased heap usage on apple silicon, so I don't believe this is entirely true. > Minimize the heap consumption when registering metrics > -- > > Key: CASSANDRA-19567 > URL: https://issues.apache.org/jira/browse/CASSANDRA-19567 > Project: Cassandra > Issue Type: Bug > Components: Observability/Metrics >Reporter: Maxim Muzafarov >Assignee: Maxim Muzafarov >Priority: Normal > Fix For: 5.x > > > The problem is only reproducible on the x86 machine, the problem is not > reproducible on the arm64. A quick analysis showed a lot of MetricName > objects stored in the heap, although the real cause could be related to > something else, the MetricName object requires extra attention. > To reproduce run the command run locally: > {code} > ant test-jvm-dtest-some > -Dtest.name=org.apache.cassandra.distributed.test.ReadRepairTest > {code} > The error: > {code:java} > [junit-timeout] Exception in thread "main" java.lang.OutOfMemoryError: Java > heap space > [junit-timeout] at > java.base/java.lang.StringLatin1.newString(StringLatin1.java:769) > [junit-timeout] at > java.base/java.lang.StringBuffer.toString(StringBuffer.java:716) > [junit-timeout] at > org.apache.cassandra.CassandraBriefJUnitResultFormatter.endTestSuite(CassandraBriefJUnitResultFormatter.java:191) > [junit-timeout] at > org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.fireEndTestSuite(JUnitTestRunner.java:854) > [junit-timeout] at > org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.run(JUnitTestRunner.java:578) > [junit-timeout] at > org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.launch(JUnitTestRunner.java:1197) > [junit-timeout] at > org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.main(JUnitTestRunner.java:1042) > [junit-timeout] Testsuite: > org.apache.cassandra.distributed.test.ReadRepairTest-cassandra.testtag_IS_UNDEFINED > [junit-timeout] Testsuite: > org.apache.cassandra.distributed.test.ReadRepairTest-cassandra.testtag_IS_UNDEFINED > Tests run: 1, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 0 sec > [junit-timeout] > [junit-timeout] Testcase: > org.apache.cassandra.distributed.test.ReadRepairTest:readRepairRTRangeMovementTest-cassandra.testtag_IS_UNDEFINED: > Caused an ERROR > [junit-timeout] Forked Java VM exited abnormally. Please note the time in the > report does not reflect the time until the VM exit. > [junit-timeout] junit.framework.AssertionFailedError: Forked Java VM exited > abnormally. Please note the time in the report does not reflect the time > until the VM exit. > [junit-timeout] at > jdk.internal.reflect.GeneratedMethodAccessor4.invoke(Unknown Source) > [junit-timeout] at > java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) > [junit-timeout] at java.base/java.util.Vector.forEach(Vector.java:1365) > [junit-timeout] at > jdk.internal.reflect.GeneratedMethodAccessor4.invoke(Unknown Source) > [junit-timeout] at > java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) > [junit-timeout] at > jdk.internal.reflect.GeneratedMethodAccessor4.invoke(Unknown Source) > [junit-timeout] at > java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) > [junit-timeout] at java.base/java.util.Vector.forEach(Vector.java:1365) > [junit-timeout] at > jdk.internal.reflect.GeneratedMethodAccessor4.invoke(Unknown Source) > [junit-timeout] at > java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) > [junit-timeout] at > jdk.internal.reflect.GeneratedMethodAccessor4.invoke(Unknown Source) > [junit-timeout] at > java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) > [junit-timeout] > [junit-timeout] > [junit-timeout] Test org.apache.cassandra.distributed.test.ReadRepairTest > FAILED (crashed)BUILD FAILED > {code} -- This message was sent by Atlassian Jira (v8.20.10#820010) - To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org For additional commands, e-mail: commits-h...@cassandra.apache.org