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

Lambda Memory Leak #525

Closed
wants to merge 2 commits into from
Closed

Lambda Memory Leak #525

wants to merge 2 commits into from

Conversation

teejae
Copy link
Contributor

@teejae teejae commented Feb 24, 2023

Only changed @PlanningID Field->Method, and now leaks classes

# Run hello world (loops every second)
$ optaplanner-quickstarts/hello-world/run.sh

# Show loaded classes being loaded every second
$ tail -f loadedClasses.txt
$ tail -f loadedClasses.txt
[1.066s][info][class,load] org.optaplanner.core.impl.localsearch.scope.LocalSearchMoveScope source: file:/Users/teejae/.m2/repository/org/optaplanner/optaplanner-core-impl/8.35.0-SNAPSHOT/optaplanner-core-impl-8.35.0-SNAPSHOT.jar
[1.066s][info][class,load] org.optaplanner.core.impl.localsearch.decider.LocalSearchDecider$$Lambda$636/0x000000080044a320 source: org.optaplanner.core.impl.localsearch.decider.LocalSearchDecider
[1.066s][info][class,load] org.optaplanner.core.impl.localsearch.decider.forager.AcceptedLocalSearchForager$1 source: file:/Users/teejae/.m2/repository/org/optaplanner/optaplanner-core-impl/8.35.0-SNAPSHOT/optaplanner-core-impl-8.35.0-SNAPSHOT.jar
[1.411s][info][class,load] java.io.ObjectInput source: jrt:/java.base
[1.411s][info][class,load] org.drools.core.marshalling.MarshallerReaderContext source: file:/Users/teejae/.gradle/caches/modules-2/files-2.1/org.drools/drools-core/8.34.0.Final/78ac6d7b2d92ae42928be281e4ba0a652384c831/drools-core-8.34.0.Final.jar
[5.938s][info][class,load] io.micrometer.core.instrument.composite.CompositeLongTaskTimer$CompositeSample$$Lambda$637/0x000000080044a960 source: io.micrometer.core.instrument.composite.CompositeLongTaskTimer$CompositeSample
[5.939s][info][class,load] io.micrometer.core.instrument.composite.CompositeLongTaskTimer$CompositeSample$$Lambda$638/0x000000080044ab90 source: io.micrometer.core.instrument.composite.CompositeLongTaskTimer$CompositeSample
[5.939s][info][class,load] io.micrometer.core.instrument.composite.CompositeMeterRegistry$$Lambda$639/0x000000080044add8 source: io.micrometer.core.instrument.composite.CompositeMeterRegistry
[5.939s][info][class,load] io.micrometer.core.instrument.composite.CompositeMeterRegistry$$Lambda$640/0x000000080044b000 source: io.micrometer.core.instrument.composite.CompositeMeterRegistry
[5.939s][info][class,load] org.optaplanner.core.impl.solver.DefaultSolver$$Lambda$641/0x000000080044b238 source: org.optaplanner.core.impl.solver.DefaultSolver
[6.950s][info][class,load] org.optaplanner.core.impl.domain.common.accessor.LambdaBeanPropertyMemberAccessor$$Lambda$642/0x000000080044b470 source: org.optaplanner.core.impl.domain.common.accessor.LambdaBeanPropertyMemberAccessor
[6.951s][info][class,load] org.optaplanner.core.impl.domain.common.accessor.LambdaBeanPropertyMemberAccessor$$Lambda$643/0x000000080044b6b0 source: org.optaplanner.core.impl.domain.common.accessor.LambdaBeanPropertyMemberAccessor
[6.952s][info][class,load] org.optaplanner.core.impl.domain.common.accessor.LambdaBeanPropertyMemberAccessor$$Lambda$644/0x000000080044b8f0 source: org.optaplanner.core.impl.domain.common.accessor.LambdaBeanPropertyMemberAccessor
[6.952s][info][class,load] org.optaplanner.core.impl.domain.common.accessor.LambdaBeanPropertyMemberAccessor$$Lambda$645/0x000000080044bb30 source: org.optaplanner.core.impl.domain.common.accessor.LambdaBeanPropertyMemberAccessor
[7.060s][info][class,load] org.drools.ancompiler.Compiledorg_acme_schooltimetabling_domain_LessonNetwork31008790748 source: __JVM_DefineClass__
[7.061s][info][class,load] org.optaplanner.core.impl.domain.common.accessor.LambdaBeanPropertyMemberAccessor$$Lambda$646/0x000000080044bd70 source: org.optaplanner.core.impl.domain.common.accessor.LambdaBeanPropertyMemberAccessor
[7.062s][info][class,load] org.optaplanner.core.impl.domain.common.accessor.LambdaBeanPropertyMemberAccessor$$Lambda$647/0x000000080044e000 source: org.optaplanner.core.impl.domain.common.accessor.LambdaBeanPropertyMemberAccessor
[7.074s][info][class,load] jdk.internal.reflect.GeneratedConstructorAccessor2 source: __ClassDefiner__
[13.066s][info][class,load] org.optaplanner.core.impl.domain.common.accessor.LambdaBeanPropertyMemberAccessor$$Lambda$648/0x000000080044e240 source: org.optaplanner.core.impl.domain.common.accessor.LambdaBeanPropertyMemberAccessor
[13.066s][info][class,load] org.optaplanner.core.impl.domain.common.accessor.LambdaBeanPropertyMemberAccessor$$Lambda$649/0x000000080044e480 source: org.optaplanner.core.impl.domain.common.accessor.LambdaBeanPropertyMemberAccessor
[13.067s][info][class,load] org.optaplanner.core.impl.domain.common.accessor.LambdaBeanPropertyMemberAccessor$$Lambda$650/0x000000080044e6c0 source: org.optaplanner.core.impl.domain.common.accessor.LambdaBeanPropertyMemberAccessor
[13.067s][info][class,load] org.optaplanner.core.impl.domain.common.accessor.LambdaBeanPropertyMemberAccessor$$Lambda$651/0x000000080044e900 source: org.optaplanner.core.impl.domain.common.accessor.LambdaBeanPropertyMemberAccessor
[13.087s][info][class,load] jdk.internal.reflect.GeneratedConstructorAccessor3 source: __ClassDefiner__
[13.173s][info][class,load] org.drools.ancompiler.Compiledorg_acme_schooltimetabling_domain_LessonNetwork31008790748 source: __JVM_DefineClass__
[13.174s][info][class,load] org.optaplanner.core.impl.domain.common.accessor.LambdaBeanPropertyMemberAccessor$$Lambda$652/0x000000080044eb40 source: org.optaplanner.core.impl.domain.common.accessor.LambdaBeanPropertyMemberAccessor
[13.174s][info][class,load] org.optaplanner.core.impl.domain.common.accessor.LambdaBeanPropertyMemberAccessor$$Lambda$653/0x000000080044ed80 source: org.optaplanner.core.impl.domain.common.accessor.LambdaBeanPropertyMemberAccessor

JIRA

Referenced pull requests

How to retest this PR or trigger a specific build:
  • for pull request checks
    Please add comment: Jenkins retest this

  • for a specific pull request check
    please add comment: Jenkins (re)run [optaplanner-quickstarts] tests

  • for a full downstream build
    please add the label run_fdb

  • for quarkus branch checks
    Run checks against Quarkus current used branch
    Please add comment: Jenkins run quarkus-branch

  • for a quarkus branch specific check
    Run checks against Quarkus current used branch
    Please add comment: Jenkins (re)run [optaplanner-quickstarts] quarkus-branch

  • for quarkus main checks
    Run checks against Quarkus main branch
    Please add comment: Jenkins run quarkus-main

  • for a specific quarkus main check
    Run checks against Quarkus main branch
    Please add comment: Jenkins (re)run [optaplanner-quickstarts] quarkus-branch

  • for quarkus lts checks
    Run checks against Quarkus lts branch
    Please add comment: Jenkins run quarkus-lts

  • for a specific quarkus lts check
    Run checks against Quarkus lts branch
    Please add comment: Jenkins (re)run [optaplanner-quickstarts] quarkus-lts

  • for native checks
    Run native checks
    Please add comment: Jenkins run native

  • for a specific native check
    Run native checks
    Please add comment: Jenkins (re)run [optaplanner-quickstarts] native

  • for mandrel checks
    Run native checks against Mandrel image
    Please add comment: Jenkins run mandrel

  • for a specific mandrel check
    Run native checks against Mandrel image
    Please add comment: Jenkins (re)run [optaplanner-quickstarts] mandrel

  • for mandrel lts checks
    Run native checks against Mandrel image and quarkus lts branch
    Please add comment: Jenkins run mandrel-lts

  • for a specific mandrel lts check
    Run native checks against Mandrel image and quarkus lts branch
    Please add comment: Jenkins (re)run [optaplanner-quickstarts] mandrel-lts

How to backport a pull request to a different branch?

In order to automatically create a backporting pull request please add one or more labels having the following format backport-<branch-name>, where <branch-name> is the name of the branch where the pull request must be backported to (e.g., backport-7.67.x to backport the original PR to the 7.67.x branch).

NOTE: backporting is an action aiming to move a change (usually a commit) from a branch (usually the main one) to another one, which is generally referring to a still maintained release branch. Keeping it simple: it is about to move a specific change or a set of them from one branch to another.

Once the original pull request is successfully merged, the automated action will create one backporting pull request per each label (with the previous format) that has been added.

If something goes wrong, the author will be notified and at this point a manual backporting is needed.

NOTE: this automated backporting is triggered whenever a pull request on main branch is labeled or closed, but both conditions must be satisfied to get the new PR created.

@kie-ci
Copy link
Contributor

kie-ci commented Feb 24, 2023

Can one of the admins verify this patch?

16 similar comments
@kie-ci
Copy link
Contributor

kie-ci commented Feb 24, 2023

Can one of the admins verify this patch?

@kie-ci
Copy link
Contributor

kie-ci commented Feb 24, 2023

Can one of the admins verify this patch?

@kie-ci
Copy link
Contributor

kie-ci commented Feb 24, 2023

Can one of the admins verify this patch?

@kie-ci
Copy link
Contributor

kie-ci commented Feb 24, 2023

Can one of the admins verify this patch?

@kie-ci
Copy link
Contributor

kie-ci commented Feb 24, 2023

Can one of the admins verify this patch?

@kie-ci
Copy link
Contributor

kie-ci commented Feb 24, 2023

Can one of the admins verify this patch?

@kie-ci
Copy link
Contributor

kie-ci commented Feb 24, 2023

Can one of the admins verify this patch?

@kie-ci
Copy link
Contributor

kie-ci commented Feb 24, 2023

Can one of the admins verify this patch?

@kie-ci
Copy link
Contributor

kie-ci commented Feb 24, 2023

Can one of the admins verify this patch?

@kie-ci
Copy link
Contributor

kie-ci commented Feb 24, 2023

Can one of the admins verify this patch?

@kie-ci
Copy link
Contributor

kie-ci commented Feb 24, 2023

Can one of the admins verify this patch?

@kie-ci
Copy link
Contributor

kie-ci commented Feb 24, 2023

Can one of the admins verify this patch?

@kie-ci
Copy link
Contributor

kie-ci commented Feb 24, 2023

Can one of the admins verify this patch?

@kie-ci
Copy link
Contributor

kie-ci commented Feb 24, 2023

Can one of the admins verify this patch?

@kie-ci
Copy link
Contributor

kie-ci commented Feb 24, 2023

Can one of the admins verify this patch?

@kie-ci
Copy link
Contributor

kie-ci commented Feb 24, 2023

Can one of the admins verify this patch?

@teejae teejae changed the base branch from stable to development February 24, 2023 07:42
@triceo
Copy link
Contributor

triceo commented Feb 24, 2023

ok to test

@triceo
Copy link
Contributor

triceo commented Feb 24, 2023

Thank you for taking the time to investigate this, @teejae! I'll look into it, hopefully next week already.
(And sorry for the botspam.)

@kie-ci3
Copy link

kie-ci3 commented Feb 24, 2023

(tests) - optaplanner-quickstarts job #123 was: UNSTABLE
Possible explanation: This should be test failures

Please look here: https://eng-jenkins-csb-business-automation.apps.ocp-c1.prod.psi.redhat.com/job/KIE/job/optaplanner/job/main/job/pullrequest/job/optaplanner-quickstarts.tests.optaplanner-quickstarts/123/display/redirect

Test results:

  • PASSED: 161
  • FAILED: 1

Those are the test failures:

org.acme.schooltimetabling.JarWithDependenciesIT.runJarWithDependencies Executable JAR timed out.

@kie-ci3
Copy link

kie-ci3 commented Feb 25, 2023

(tests) - optaplanner-quickstarts job #124 was: UNSTABLE
Possible explanation: This should be test failures

Please look here: https://eng-jenkins-csb-business-automation.apps.ocp-c1.prod.psi.redhat.com/job/KIE/job/optaplanner/job/main/job/pullrequest/job/optaplanner-quickstarts.tests.optaplanner-quickstarts/124/display/redirect

Test results:

  • PASSED: 161
  • FAILED: 1

Those are the test failures:

org.acme.schooltimetabling.JarWithDependenciesIT.runJarWithDependencies Executable JAR timed out.

@teejae teejae closed this Sep 16, 2023
@teejae teejae deleted the tj-mem-leak branch September 16, 2023 18:29
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants