jenkins-infra / jenkins.io

A static site for the Jenkins automation server
https://jenkins.io
Other
323 stars 1.24k forks source link

Jenkins memory leak ? #6788

Closed hellojukay closed 1 year ago

hellojukay commented 1 year ago

Jenkins will occupy very little memory when it is first started, but as time goes by, Jenkins will occupy more and more memory, especially the memory in the G1 Old Gen area will not be released, and it will become larger and larger (this process (is slow), even if no one uses Jenkins on weekends, its memory will increase image image

Jenkins and plugins

Jenkins: 2.375.1
OS: Linux - 5.4.0-139-generic
Java: 11.0.17 - Eclipse Adoptium (OpenJDK 64-Bit Server VM)
---
ace-editor:1.1
active-directory:2.29
allure-jenkins-plugin:2.30.3
ansible:1.1
ant:481.v7b_09e538fcca
antisamy-markup-formatter:155.v795fb_8702324
apache-httpcomponents-client-4-api:4.5.13-138.v4e7d9a_7b_a_e61
authentication-tokens:1.4
badge:1.9.1
blueocean:1.26.0
blueocean-autofavorite:1.2.5
blueocean-bitbucket-pipeline:1.26.0
blueocean-commons:1.26.0
blueocean-config:1.26.0
blueocean-core-js:1.26.0
blueocean-dashboard:1.26.0
blueocean-display-url:2.4.1
blueocean-events:1.26.0
blueocean-executor-info:1.26.0
blueocean-git-pipeline:1.26.0
blueocean-github-pipeline:1.26.0
blueocean-i18n:1.26.0
blueocean-jira:1.26.0
blueocean-jwt:1.26.0
blueocean-personalization:1.26.0
blueocean-pipeline-api-impl:1.26.0
blueocean-pipeline-editor:1.26.0
blueocean-pipeline-scm-api:1.26.0
blueocean-rest:1.26.0
blueocean-rest-impl:1.26.0
blueocean-web:1.26.0
bootstrap5-api:5.2.1-3
bouncycastle-api:2.26
branch-api:2.1051.v9985666b_f6cc
build-name-setter:2.2.0
build-timeout:1.25
build-timestamp:1.0.3
build-user-vars-plugin:1.9
buildresult-trigger:0.18
buildtriggerbadge:251.vdf6ef853f3f5
caffeine-api:2.9.3-65.v6a_47d0f4d1fe
checks-api:1.8.0
cleansource:1.14.3-SNAPSHOT (private-06/09/2023 13:13-Administrator)
cloudbees-bitbucket-branch-source:791.vb_eea_a_476405b
cloudbees-folder:6.800.v71307ca_b_986b
cmakebuilder:4.1.1
code-coverage-api:3.5.0
command-launcher:90.v669d7ccb_7c31
commons-lang3-api:3.12.0-36.vd97de6465d5b_
commons-text-api:1.10.0-27.vb_fa_3896786a_7
config-file-provider:3.11.1
credentials:1214.v1de940103927
credentials-binding:523.vd859a_4b_122e6
cvs:2.19.1
data-tables-api:1.12.1-4
description-setter:1.10
display-url-api:2.3.7
docker-commons:1.21
docker-workflow:563.vd5d2e5c4007f
doxygen:0.18
durable-task:503.v57154d18d478
echarts-api:5.4.0-1
email-ext:2.92
email-ext-recipients-column:27.vb_9404db_b_018d
emailext-template:1.5
envinject:2.892.v25453b_80e595
envinject-api:1.199.v3ce31253ed13
extended-choice-parameter:359.v35dcfdd0c20d
extensible-choice-parameter:1.8.0
external-monitor-job:203.v683c09d993b_9
favorite:2.4.1
font-awesome-api:6.2.1-1
forensics-api:1.16.0
generic-webhook-trigger:1.85.2
git:4.14.3
git-client:3.13.1
git-forensics:1.11.0
git-parameter:0.9.18
git-server:99.va_0826a_b_cdfa_d
github:1.36.0
github-api:1.303-400.v35c2d8258028
github-branch-source:1696.v3a_7603564d04
gitlab-api:5.0.1-78.v47a_45b_9f78b_7
gitlab-branch-source:643.vdc12a_4a_06434
gitlab-kubernetes-credentials:22.v6a_97471fb_418
gitlab-logo:1.1.0
gitlab-merge-request-jenkins:2.0.0
gitlab-oauth:1.16
gitlab-plugin:1.6.0
gradle:2.1.1
gradle-daemon:0.1.0
gradle-repo:1.0.1
groovy-postbuild:2.5
h2-api:1.4.199
handy-uri-templates-2-api:2.1.8-22.v77d5b_75e6953
htmlpublisher:1.31
http_request:1.16
inline-pipeline:1.0.2
instance-identity:142.v04572ca_5b_265
ionicons-api:31.v4757b_6987003
jackson2-api:2.14.1-313.v504cdd45c18b
jacoco:3.3.2
jakarta-activation-api:2.0.1-2
jakarta-mail-api:2.0.1-2
javadoc:226.v71211feb_e7e9
javax-activation-api:1.2.0-5
javax-mail-api:1.6.2-8
jaxb:2.3.7-1
jdk-tool:63.v62d2fd4b_4793
jenkins-design-language:1.26.0
jersey2-api:2.37-1
jfrog:1.0.5
jira:3.8
jira-steps:2.0.141.vd0c6e6dc83f0
jjwt-api:0.11.5-77.v646c772fddb_0
job-import-plugin:3.6
jobtemplates:1.0
jquery3-api:3.6.1-2
jsch:0.1.55.61.va_e9ee26616e7
junit:1166.va_436e268e972
kubernetes:3743.v1fa_4c724c3b_7
kubernetes-client-api:5.12.2-193.v26a_6078f65a_9
kubernetes-credentials:0.9.0
kubernetes-credentials-provider:1.206.v7ce2cf7b_0c8b
kubernetes-pipeline-devops-steps:1.6
ldap:2.12
ldapemail:0.8
localization-support:1.2
localization-zh-cn:1.0.24
lockable-resources:1069.v726298f53f8c
log-file-filter:76.v43e83b7e1163
mail-watcher-plugin:1.17
mailcommander:1.0.0
mailer:438.v02c7f0a_12fa_4
matrix-auth:3.1.6
matrix-project:785.v06b_7f47b_c631
maven-plugin:3.20
metrics:4.2.13-420.vea_2f17932dd6
mina-sshd-api-common:2.9.2-50.va_0e1f42659a_a
mina-sshd-api-core:2.9.2-50.va_0e1f42659a_a
momentjs:1.1.1
monitoring:1.95.0
multi-branch-project-plugin:0.7
multibranch-build-strategy-extension:1.0.10
multibranch-scan-webhook-trigger:1.0.9
okhttp-api:4.9.3-108.v0feda04578cf
pam-auth:1.10
parameterized-scheduler:1.2
parameterized-trigger:2.45
persistent-parameter:1.3
pipeline-build-step:2.18
pipeline-config-history:1.6
pipeline-github:2.8-138.d766e30bb08b
pipeline-github-lib:38.v445716ea_edda_
pipeline-graph-analysis:195.v5812d95a_a_2f9
pipeline-groovy-lib:621.vb_44ce045b_582
pipeline-input-step:466.v6d0a_5df34f81
pipeline-maven:1239.v08f725b_927d9
pipeline-milestone-step:101.vd572fef9d926
pipeline-model-api:2.2118.v31fd5b_9944b_5
pipeline-model-declarative-agent:1.1.1
pipeline-model-definition:2.2118.v31fd5b_9944b_5
pipeline-model-extensions:2.2118.v31fd5b_9944b_5
pipeline-multibranch-defaults:2.1
pipeline-rest-api:2.28
pipeline-stage-step:296.v5f6908f017a_5
pipeline-stage-tags-metadata:2.2118.v31fd5b_9944b_5
pipeline-stage-view:2.28
pipeline-timeline:1.0.3
pipeline-utility-steps:2.14.0
plain-credentials:139.ved2b_9cf7587b
plugin-util-api:2.20.0
popper2-api:2.11.6-2
prism-api:1.29.0-1
prometheus:2.1.1
pubsub-light:1.17
qy-wechat-notification:1.1.1
rebuild:1.33
remote-file:1.23
repo:1.16.0
resource-disposer:0.20
role-strategy:569.v7476f8e4fe29
scm-api:621.vda_a_b_055e58f7
scm-filter-branch-pr:0.5.1
scp:1.8
script-security:1228.vd93135a_2fb_25
simple-build-for-pipeline:0.2
snakeyaml-api:1.33-90.v80dcb_3814d35
sonar:2.15
sonarqube-generic-coverage:1.0
sse-gateway:1.26
ssh:2.6.1
ssh-agent:295.v9ca_a_1c7cc3a_a_
ssh-credentials:305.v8f4381501156
ssh-slaves:2.854.v7fd446b_337c9
ssh-steps:2.0.39.v831c5e6468b_c
sshd:3.270.vb_a_e71e64c287
structs:324.va_f5d6774f3a_d
template-workflows:41.v32d86a_313b_4a
terminate-ssh-processes-plugin:1.0
test-results-aggregator:1.2.10
text-finder:1.22
throttle-concurrents:2.10
timestamper:1.21
token-macro:321.vd7cc1f2a_52c8
trilead-api:2.84.v72119de229b_7
variant:59.vf075fe829ccb
windows-slaves:1.8.1
workflow-aggregator:590.v6a_d052e5a_a_b_5
workflow-api:1200.v8005c684b_a_c6
workflow-basic-steps:994.vd57e3ca_46d24
workflow-cps:3565.v4b_d9b_8c29a_b_3
workflow-cps-global-lib:609.vd95673f149b_b
workflow-durable-task-step:1217.v38306d8fa_b_5c
workflow-job:1254.v3f64639b_11dd
workflow-multibranch:716.vc692a_e52371b_
workflow-remote-loader:1.5
workflow-scm-step:400.v6b_89a_1317c9a_
workflow-step-api:639.v6eca_cd8c04a_a_
workflow-support:839.v35e2736cfd5c
ws-cleanup:0.44

Problem with this page

https://community.jenkins.io/t/jenkins-memory-leak/10309

Expected behavior

Jenkins can release memory when it is idle. The space of G1 Old gen does not grow slowly all the time.

Actual behavior

Jenkins did not release part of the memory when it was idle. G1 Old Gen has been growing slowly and finally reached the Xmx limit.

Possible solution

A memory leak occurred in Jenkins Core or some specific plugin.

zbynek commented 1 year ago

The issue tracker for the jenkins.io documentation site is used to track issues with the Jenkins documentation.

Please use the Jenkins issue tracker for bug reports. Btw. with the Monitoring plugin that you have installed you should be able to do a heap dump and analyze that to see what class(es) are the main problem -- that might be helpful in deciding which plugin is causing this.