-
Type:
Bug
-
Status: Resolved
-
Resolution: Done
-
Affects Version/s: 2.5.1
-
Fix Version/s: 2.6.0
-
Component/s: None
-
Labels:None
We've noticed very high cpu usage on the jenkins slave process when running with artifactory.
Taking an example, I've used the native top program (showing the top threads) and correlated the top threads with the jstack of the slave process and found the troublesome java threads are :
"DefaultMetadataResolver-4-1" #360 daemon prio=5 os_prio=0 tid=0x00002b48602f5800 nid=0x7684 runnable [0x00002b48408e2000] java.lang.Thread.State: RUNNABLE at java.util.TreeMap.put(TreeMap.java:568) at org.jfrog.build.extractor.clientConfiguration.PrefixPropertyHandler.setStringValue(PrefixPropertyHandler.java:55) at org.jfrog.build.extractor.clientConfiguration.ArtifactoryClientConfiguration.fillFromProperties(ArtifactoryClientConfiguration.java:94) at org.jfrog.build.extractor.clientConfiguration.ArtifactoryClientConfiguration.fillFromProperties(ArtifactoryClientConfiguration.java:80) at org.jfrog.build.extractor.maven.resolver.ResolutionHelper.init(ResolutionHelper.java:32) at org.jfrog.build.extractor.maven.resolver.ArtifactoryEclipseRepositoryListener.initResolutionHelper(ArtifactoryEclipseRepositoryListener.java:187) at org.jfrog.build.extractor.maven.resolver.ArtifactoryEclipseRepositoryListener.verifyArtifactoryResolutionEnforced(ArtifactoryEclipseRepositoryListener.java:129) at org.jfrog.build.extractor.maven.resolver.ArtifactoryEclipseRepositoryListener.metadataDownloading(ArtifactoryEclipseRepositoryListener.java:99) at org.eclipse.aether.internal.impl.DefaultRepositoryEventDispatcher.dispatch(DefaultRepositoryEventDispatcher.java:169) at org.eclipse.aether.internal.impl.DefaultRepositoryEventDispatcher.dispatch(DefaultRepositoryEventDispatcher.java:111) at org.eclipse.aether.internal.impl.DefaultMetadataResolver.metadataDownloading(DefaultMetadataResolver.java:517) at org.eclipse.aether.internal.impl.DefaultMetadataResolver.access$000(DefaultMetadataResolver.java:75) at org.eclipse.aether.internal.impl.DefaultMetadataResolver$ResolveTask.run(DefaultMetadataResolver.java:598) at org.eclipse.aether.util.concurrency.RunnableErrorForwarder$1.run(RunnableErrorForwarder.java:67) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) at java.lang.Thread.run(Thread.java:745) "DefaultMetadataResolver-4-0" #359 daemon prio=5 os_prio=0 tid=0x00002b4860d98000 nid=0x7683 runnable [0x00002b4843994000] java.lang.Thread.State: RUNNABLE at java.util.TreeMap.put(TreeMap.java:568) at org.jfrog.build.extractor.clientConfiguration.PrefixPropertyHandler.setStringValue(PrefixPropertyHandler.java:55) at org.jfrog.build.extractor.clientConfiguration.ArtifactoryClientConfiguration.fillFromProperties(ArtifactoryClientConfiguration.java:94) at org.jfrog.build.extractor.clientConfiguration.ArtifactoryClientConfiguration.fillFromProperties(ArtifactoryClientConfiguration.java:80) at org.jfrog.build.extractor.maven.resolver.ResolutionHelper.init(ResolutionHelper.java:32) at org.jfrog.build.extractor.maven.resolver.ArtifactoryEclipseRepositoryListener.initResolutionHelper(ArtifactoryEclipseRepositoryListener.java:187) at org.jfrog.build.extractor.maven.resolver.ArtifactoryEclipseRepositoryListener.verifyArtifactoryResolutionEnforced(ArtifactoryEclipseRepositoryListener.java:129) at org.jfrog.build.extractor.maven.resolver.ArtifactoryEclipseRepositoryListener.metadataDownloading(ArtifactoryEclipseRepositoryListener.java:99) at org.eclipse.aether.internal.impl.DefaultRepositoryEventDispatcher.dispatch(DefaultRepositoryEventDispatcher.java:169) at org.eclipse.aether.internal.impl.DefaultRepositoryEventDispatcher.dispatch(DefaultRepositoryEventDispatcher.java:111) at org.eclipse.aether.internal.impl.DefaultMetadataResolver.metadataDownloading(DefaultMetadataResolver.java:517) at org.eclipse.aether.internal.impl.DefaultMetadataResolver.access$000(DefaultMetadataResolver.java:75) at org.eclipse.aether.internal.impl.DefaultMetadataResolver$ResolveTask.run(DefaultMetadataResolver.java:598) at org.eclipse.aether.util.concurrency.RunnableErrorForwarder$1.run(RunnableErrorForwarder.java:67) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) at java.lang.Thread.run(Thread.java:745)
This high cpu usage can cause jobs to timeout.
Is therte a way to resolve this ?
- was triggered by
-
BI-368 Avoid high CPU while preparing build-info properties
- Resolved