[JBoss JIRA] (DROOLS-4805) Memory leak in STREAM mode (# PointInTimeTriggers growing)
by Mario Fusco (Jira)
[ https://issues.redhat.com/browse/DROOLS-4805?page=com.atlassian.jira.plug... ]
Mario Fusco resolved DROOLS-4805.
---------------------------------
Fix Version/s: 7.31.0.Final
Resolution: Done
Fixed by https://github.com/kiegroup/drools/commit/f4bd8d80791fee7dcd8b35cfddee3bd...
> Memory leak in STREAM mode (# PointInTimeTriggers growing)
> ----------------------------------------------------------
>
> Key: DROOLS-4805
> URL: https://issues.redhat.com/browse/DROOLS-4805
> Project: Drools
> Issue Type: Bug
> Affects Versions: 7.29.0.Final
> Reporter: Jesse White
> Assignee: Mario Fusco
> Priority: Major
> Fix For: 7.31.0.Final
>
> Attachments: image-2019-11-25-10-31-07-281.png
>
>
> When running our engine in STREAM mode, we notice a number of Drools internal object references increasing time even though the fact count stays relatively constant.
> jmap -histo <pid> shows:
> {noformat}
> num #instances #bytes class name
> ----------------------------------------------
> 1: 17478466 1258449552 java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask
> 2: 17475174 699006960 org.drools.core.time.impl.JDKTimerService$JDKJobHandle
> 3: 17762331 568394592 java.util.concurrent.ConcurrentHashMap$Node
> 4: 17475174 559205568 org.drools.core.rule.SlidingTimeWindow$BehaviorJobContext
> 5: 17475174 559205568 org.drools.core.time.impl.DefaultTimerJobInstance
> 6: 8596776 551411680 [C
> 7: 18898675 453568200 java.lang.Long
> 8: 17475174 419404176 org.drools.core.time.SelfRemovalJobContext
> 9: 17475174 279602784 org.drools.core.time.SelfRemovalJob
> 10: 17475174 279602784 org.drools.core.time.impl.PointInTimeTrigger
> 11: 9263698 222328752 java.lang.String
> 12: 4584671 146709472 java.util.HashMap$Node
> 13: 246658 138804176 [B
> {noformat}
> These number continue to increase over time until the system OOMs.
> Graph for # of facts in the session looks like:
> !image-2019-11-25-10-31-07-281.png|thumbnail!
> The engine is fairly busy - we're constantly adding and removing facts.
> Our rules are available here:
> https://github.com/OpenNMS/opennms/blob/opennms-25.0.0-1/opennms-base-ass...
--
This message was sent by Atlassian Jira
(v7.13.8#713008)
6 years, 5 months
[JBoss JIRA] (WFWIP-278) MP Fault Tolerance - @Retry(maxRetries = -1) does not work
by Radoslav Husar (Jira)
[ https://issues.redhat.com/browse/WFWIP-278?page=com.atlassian.jira.plugin... ]
Radoslav Husar updated WFWIP-278:
---------------------------------
Summary: MP Fault Tolerance - @Retry(maxRetries = -1) does not work (was: MP Fault Tolerance - @Retry(maxRetries = 1) does not work)
> MP Fault Tolerance - @Retry(maxRetries = -1) does not work
> ----------------------------------------------------------
>
> Key: WFWIP-278
> URL: https://issues.redhat.com/browse/WFWIP-278
> Project: WildFly WIP
> Issue Type: Bug
> Components: MP Fault Tolerance
> Reporter: Miroslav Novak
> Assignee: Radoslav Husar
> Priority: Critical
>
> if method in MP FT deployment is annotated by {{@Retry(maxRetries = -1)}} then it should it should retry forever until the method returns without exception. However it does not work.
> Actual result: Exception is thrown from annotated {{@Retry(maxRetries = -1)}}
> Expected result: Retry forever until the method returns without exception.
--
This message was sent by Atlassian Jira
(v7.13.8#713008)
6 years, 5 months
[JBoss JIRA] (WFWIP-278) MP Fault Tolerance - @Retry(maxRetries = -1) does not work
by Radoslav Husar (Jira)
[ https://issues.redhat.com/browse/WFWIP-278?page=com.atlassian.jira.plugin... ]
Radoslav Husar commented on WFWIP-278:
--------------------------------------
Correcting the summary: its the -1 that doesn't work.
> MP Fault Tolerance - @Retry(maxRetries = -1) does not work
> ----------------------------------------------------------
>
> Key: WFWIP-278
> URL: https://issues.redhat.com/browse/WFWIP-278
> Project: WildFly WIP
> Issue Type: Bug
> Components: MP Fault Tolerance
> Reporter: Miroslav Novak
> Assignee: Radoslav Husar
> Priority: Critical
>
> if method in MP FT deployment is annotated by {{@Retry(maxRetries = -1)}} then it should it should retry forever until the method returns without exception. However it does not work.
> Actual result: Exception is thrown from annotated {{@Retry(maxRetries = -1)}}
> Expected result: Retry forever until the method returns without exception.
--
This message was sent by Atlassian Jira
(v7.13.8#713008)
6 years, 5 months
[JBoss JIRA] (WFWIP-279) FaultTolerance subsystem gets MP Config properties values too many times
by Ivan Straka (Jira)
[ https://issues.redhat.com/browse/WFWIP-279?page=com.atlassian.jira.plugin... ]
Ivan Straka closed WFWIP-279.
-----------------------------
Resolution: Rejected
Not an issue. Wrong test design / test bug.
> FaultTolerance subsystem gets MP Config properties values too many times
> ------------------------------------------------------------------------
>
> Key: WFWIP-279
> URL: https://issues.redhat.com/browse/WFWIP-279
> Project: WildFly WIP
> Issue Type: Bug
> Components: MP Config, MP Fault Tolerance
> Reporter: Ivan Straka
> Assignee: Radoslav Husar
> Priority: Blocker
>
> I have a fail safe service that would normally return a value provided by a provider A or a value from provider B on fallback (in case the provider A throws an exception). Providers return values based on MP Config property. Source of the properties is a ConfigSource class that reads a property file.
> The issue is ConfigSource#getProperties method is called too may times that results to Too many open files exception:
> {code:java}
> 13:41:48,959 ERROR [stderr] (MSC service thread 1-4) java.io.FileNotFoundException: /home/istraka/repositories/github/eap-microprofile-test-suite/microprofile-metrics/target/test-classes/org/jboss/eap/qe/microprofile/metrics/integration/ft/ft-custom-metric.properties (Too many open files)
> 13:41:48,960 ERROR [stderr] (MSC service thread 1-4) at java.io.FileInputStream.open0(Native Method)
> 13:41:48,960 ERROR [stderr] (MSC service thread 1-4) at java.io.FileInputStream.open(FileInputStream.java:195)
> 13:41:48,960 ERROR [stderr] (MSC service thread 1-4) at java.io.FileInputStream.<init>(FileInputStream.java:138)
> 13:41:48,960 ERROR [stderr] (MSC service thread 1-4) at java.io.FileInputStream.<init>(FileInputStream.java:93)
> 13:41:48,984 ERROR [stderr] (MSC service thread 1-4) at org.jboss.eap.qe.microprofile.metrics.integration.ft.FTCustomConfigSource.getProperties(FTCustomConfigSource.java:25)
> 13:41:48,984 ERROR [stderr] (MSC service thread 1-4) at org.jboss.eap.qe.microprofile.metrics.integration.ft.FTCustomConfigSource.getValue(FTCustomConfigSource.java:37)
> 13:41:48,984 ERROR [stderr] (MSC service thread 1-4) at io.smallrye.config.SmallRyeConfig.getValue(SmallRyeConfig.java:84)
> 13:41:48,984 ERROR [stderr] (MSC service thread 1-4) at io.smallrye.config.SmallRyeConfig.getOptionalValue(SmallRyeConfig.java:106)
> 13:41:48,984 ERROR [stderr] (MSC service thread 1-4) at io.smallrye.faulttolerance.config.FaultToleranceOperation.getConfigStatus(FaultToleranceOperation.java:250)
> 13:41:48,984 ERROR [stderr] (MSC service thread 1-4) at io.smallrye.faulttolerance.config.FaultToleranceOperation.getConfig(FaultToleranceOperation.java:209)
> 13:41:48,984 ERROR [stderr] (MSC service thread 1-4) at io.smallrye.faulttolerance.config.FaultToleranceOperation.of(FaultToleranceOperation.java:51)
> 13:41:48,984 ERROR [stderr] (MSC service thread 1-4) at io.smallrye.faulttolerance.HystrixExtension.collectFaultToleranceOperations(HystrixExtension.java:112)
> 13:41:48,984 ERROR [stderr] (MSC service thread 1-4) at sun.reflect.GeneratedMethodAccessor10.invoke(Unknown Source)
> 13:41:48,984 ERROR [stderr] (MSC service thread 1-4) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> 13:41:48,984 ERROR [stderr] (MSC service thread 1-4) at java.lang.reflect.Method.invoke(Method.java:498)
> 13:41:48,984 ERROR [stderr] (MSC service thread 1-4) at org.jboss.weld.injection.StaticMethodInjectionPoint.invoke(StaticMethodInjectionPoint.java:95)
> 13:41:48,984 ERROR [stderr] (MSC service thread 1-4) at org.jboss.weld.injection.StaticMethodInjectionPoint.invoke(StaticMethodInjectionPoint.java:85)
> 13:41:48,984 ERROR [stderr] (MSC service thread 1-4) at org.jboss.weld.injection.MethodInvocationStrategy$SimpleMethodInvocationStrategy.invoke(MethodInvocationStrategy.java:168)
> 13:41:48,984 ERROR [stderr] (MSC service thread 1-4) at org.jboss.weld.event.ObserverMethodImpl.sendEvent(ObserverMethodImpl.java:330)
> 13:41:48,984 ERROR [stderr] (MSC service thread 1-4) at org.jboss.weld.event.ExtensionObserverMethodImpl.sendEvent(ExtensionObserverMethodImpl.java:123)
> 13:41:48,984 ERROR [stderr] (MSC service thread 1-4) at org.jboss.weld.event.ObserverMethodImpl.sendEvent(ObserverMethodImpl.java:308)
> 13:41:48,984 ERROR [stderr] (MSC service thread 1-4) at org.jboss.weld.event.ObserverMethodImpl.notify(ObserverMethodImpl.java:286)
> 13:41:48,985 ERROR [stderr] (MSC service thread 1-4) at javax.enterprise.inject.spi.ObserverMethod.notify(ObserverMethod.java:124)
> 13:41:48,985 ERROR [stderr] (MSC service thread 1-4) at org.jboss.weld.util.Observers.notify(Observers.java:166)
> 13:41:48,985 ERROR [stderr] (MSC service thread 1-4) at org.jboss.weld.event.ObserverNotifier.notifySyncObservers(ObserverNotifier.java:285)
> 13:41:48,985 ERROR [stderr] (MSC service thread 1-4) at org.jboss.weld.event.ObserverNotifier.notify(ObserverNotifier.java:273)
> 13:41:48,985 ERROR [stderr] (MSC service thread 1-4) at org.jboss.weld.event.ObserverNotifier.fireEvent(ObserverNotifier.java:177)
> 13:41:48,985 ERROR [stderr] (MSC service thread 1-4) at org.jboss.weld.event.ObserverNotifier.fireEvent(ObserverNotifier.java:171)
> 13:41:48,985 ERROR [stderr] (MSC service thread 1-4) at org.jboss.weld.bootstrap.events.AbstractContainerEvent.fire(AbstractContainerEvent.java:53)
> 13:41:48,985 ERROR [stderr] (MSC service thread 1-4) at org.jboss.weld.bootstrap.events.AbstractDefinitionContainerEvent.fire(AbstractDefinitionContainerEvent.java:44)
> 13:41:48,985 ERROR [stderr] (MSC service thread 1-4) at org.jboss.weld.bootstrap.events.ProcessManagedBeanImpl.fire(ProcessManagedBeanImpl.java:31)
> 13:41:48,985 ERROR [stderr] (MSC service thread 1-4) at org.jboss.weld.bootstrap.events.ContainerLifecycleEvents.fireProcessBean(ContainerLifecycleEvents.java:246)
> 13:41:48,985 ERROR [stderr] (MSC service thread 1-4) at org.jboss.weld.bootstrap.events.ContainerLifecycleEvents.fireProcessBean(ContainerLifecycleEvents.java:240)
> 13:41:48,985 ERROR [stderr] (MSC service thread 1-4) at org.jboss.weld.bootstrap.AbstractBeanDeployer.fireProcessBeanEvents(AbstractBeanDeployer.java:128)
> 13:41:48,985 ERROR [stderr] (MSC service thread 1-4) at org.jboss.weld.bootstrap.BeanDeployer.deploy(BeanDeployer.java:331)
> 13:41:48,985 ERROR [stderr] (MSC service thread 1-4) at org.jboss.weld.bootstrap.BeanDeployment.deployBeans(BeanDeployment.java:264)
> 13:41:48,985 ERROR [stderr] (MSC service thread 1-4) at org.jboss.weld.bootstrap.WeldStartup.deployBeans(WeldStartup.java:453)
> 13:41:48,985 ERROR [stderr] (MSC service thread 1-4) at org.jboss.weld.bootstrap.WeldBootstrap.deployBeans(WeldBootstrap.java:86)
> 13:41:48,985 ERROR [stderr] (MSC service thread 1-4) at org.jboss.as.weld.WeldStartService.start(WeldStartService.java:97)
> 13:41:48,985 ERROR [stderr] (MSC service thread 1-4) at org.jboss.msc.service.ServiceControllerImpl$StartTask.startService(ServiceControllerImpl.java:1739)
> 13:41:48,985 ERROR [stderr] (MSC service thread 1-4) at org.jboss.msc.service.ServiceControllerImpl$StartTask.execute(ServiceControllerImpl.java:1701)
> 13:41:48,985 ERROR [stderr] (MSC service thread 1-4) at org.jboss.msc.service.ServiceControllerImpl$ControllerTask.run(ServiceControllerImpl.java:1559)
> 13:41:48,985 ERROR [stderr] (MSC service thread 1-4) at org.jboss.threads.ContextClassLoaderSavingRunnable.run(ContextClassLoaderSavingRunnable.java:35)
> 13:41:48,985 ERROR [stderr] (MSC service thread 1-4) at org.jboss.threads.EnhancedQueueExecutor.safeRun(EnhancedQueueExecutor.java:1982)
> 13:41:48,985 ERROR [stderr] (MSC service thread 1-4) at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.doRunTask(EnhancedQueueExecutor.java:1486)
> 13:41:48,985 ERROR [stderr] (MSC service thread 1-4) at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.run(EnhancedQueueExecutor.java:1377)
> 13:41:48,985 ERROR [stderr] (MSC service thread 1-4) at java.lang.Thread.run(Thread.java:748)
> {code}
> This happens when a deployment is deployed. There is no issue with ConfigSource class as it reads the file correctly on the first time.
>
--
This message was sent by Atlassian Jira
(v7.13.8#713008)
6 years, 5 months
[JBoss JIRA] (WFWIP-279) FaultTolerance subsystem gets MP Config properties values too many times
by Radoslav Husar (Jira)
[ https://issues.redhat.com/browse/WFWIP-279?page=com.atlassian.jira.plugin... ]
Radoslav Husar commented on WFWIP-279:
--------------------------------------
Every call to getValue (https://github.com/istraka/eap-microprofile-test-suite/blob/mp-metrics-ft...) will output that log message.
Can you expand getValue to write out the name of the value that is being gotten?
> FaultTolerance subsystem gets MP Config properties values too many times
> ------------------------------------------------------------------------
>
> Key: WFWIP-279
> URL: https://issues.redhat.com/browse/WFWIP-279
> Project: WildFly WIP
> Issue Type: Bug
> Components: MP Config, MP Fault Tolerance
> Reporter: Ivan Straka
> Assignee: Radoslav Husar
> Priority: Blocker
>
> I have a fail safe service that would normally return a value provided by a provider A or a value from provider B on fallback (in case the provider A throws an exception). Providers return values based on MP Config property. Source of the properties is a ConfigSource class that reads a property file.
> The issue is ConfigSource#getProperties method is called too may times that results to Too many open files exception:
> {code:java}
> 13:41:48,959 ERROR [stderr] (MSC service thread 1-4) java.io.FileNotFoundException: /home/istraka/repositories/github/eap-microprofile-test-suite/microprofile-metrics/target/test-classes/org/jboss/eap/qe/microprofile/metrics/integration/ft/ft-custom-metric.properties (Too many open files)
> 13:41:48,960 ERROR [stderr] (MSC service thread 1-4) at java.io.FileInputStream.open0(Native Method)
> 13:41:48,960 ERROR [stderr] (MSC service thread 1-4) at java.io.FileInputStream.open(FileInputStream.java:195)
> 13:41:48,960 ERROR [stderr] (MSC service thread 1-4) at java.io.FileInputStream.<init>(FileInputStream.java:138)
> 13:41:48,960 ERROR [stderr] (MSC service thread 1-4) at java.io.FileInputStream.<init>(FileInputStream.java:93)
> 13:41:48,984 ERROR [stderr] (MSC service thread 1-4) at org.jboss.eap.qe.microprofile.metrics.integration.ft.FTCustomConfigSource.getProperties(FTCustomConfigSource.java:25)
> 13:41:48,984 ERROR [stderr] (MSC service thread 1-4) at org.jboss.eap.qe.microprofile.metrics.integration.ft.FTCustomConfigSource.getValue(FTCustomConfigSource.java:37)
> 13:41:48,984 ERROR [stderr] (MSC service thread 1-4) at io.smallrye.config.SmallRyeConfig.getValue(SmallRyeConfig.java:84)
> 13:41:48,984 ERROR [stderr] (MSC service thread 1-4) at io.smallrye.config.SmallRyeConfig.getOptionalValue(SmallRyeConfig.java:106)
> 13:41:48,984 ERROR [stderr] (MSC service thread 1-4) at io.smallrye.faulttolerance.config.FaultToleranceOperation.getConfigStatus(FaultToleranceOperation.java:250)
> 13:41:48,984 ERROR [stderr] (MSC service thread 1-4) at io.smallrye.faulttolerance.config.FaultToleranceOperation.getConfig(FaultToleranceOperation.java:209)
> 13:41:48,984 ERROR [stderr] (MSC service thread 1-4) at io.smallrye.faulttolerance.config.FaultToleranceOperation.of(FaultToleranceOperation.java:51)
> 13:41:48,984 ERROR [stderr] (MSC service thread 1-4) at io.smallrye.faulttolerance.HystrixExtension.collectFaultToleranceOperations(HystrixExtension.java:112)
> 13:41:48,984 ERROR [stderr] (MSC service thread 1-4) at sun.reflect.GeneratedMethodAccessor10.invoke(Unknown Source)
> 13:41:48,984 ERROR [stderr] (MSC service thread 1-4) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> 13:41:48,984 ERROR [stderr] (MSC service thread 1-4) at java.lang.reflect.Method.invoke(Method.java:498)
> 13:41:48,984 ERROR [stderr] (MSC service thread 1-4) at org.jboss.weld.injection.StaticMethodInjectionPoint.invoke(StaticMethodInjectionPoint.java:95)
> 13:41:48,984 ERROR [stderr] (MSC service thread 1-4) at org.jboss.weld.injection.StaticMethodInjectionPoint.invoke(StaticMethodInjectionPoint.java:85)
> 13:41:48,984 ERROR [stderr] (MSC service thread 1-4) at org.jboss.weld.injection.MethodInvocationStrategy$SimpleMethodInvocationStrategy.invoke(MethodInvocationStrategy.java:168)
> 13:41:48,984 ERROR [stderr] (MSC service thread 1-4) at org.jboss.weld.event.ObserverMethodImpl.sendEvent(ObserverMethodImpl.java:330)
> 13:41:48,984 ERROR [stderr] (MSC service thread 1-4) at org.jboss.weld.event.ExtensionObserverMethodImpl.sendEvent(ExtensionObserverMethodImpl.java:123)
> 13:41:48,984 ERROR [stderr] (MSC service thread 1-4) at org.jboss.weld.event.ObserverMethodImpl.sendEvent(ObserverMethodImpl.java:308)
> 13:41:48,984 ERROR [stderr] (MSC service thread 1-4) at org.jboss.weld.event.ObserverMethodImpl.notify(ObserverMethodImpl.java:286)
> 13:41:48,985 ERROR [stderr] (MSC service thread 1-4) at javax.enterprise.inject.spi.ObserverMethod.notify(ObserverMethod.java:124)
> 13:41:48,985 ERROR [stderr] (MSC service thread 1-4) at org.jboss.weld.util.Observers.notify(Observers.java:166)
> 13:41:48,985 ERROR [stderr] (MSC service thread 1-4) at org.jboss.weld.event.ObserverNotifier.notifySyncObservers(ObserverNotifier.java:285)
> 13:41:48,985 ERROR [stderr] (MSC service thread 1-4) at org.jboss.weld.event.ObserverNotifier.notify(ObserverNotifier.java:273)
> 13:41:48,985 ERROR [stderr] (MSC service thread 1-4) at org.jboss.weld.event.ObserverNotifier.fireEvent(ObserverNotifier.java:177)
> 13:41:48,985 ERROR [stderr] (MSC service thread 1-4) at org.jboss.weld.event.ObserverNotifier.fireEvent(ObserverNotifier.java:171)
> 13:41:48,985 ERROR [stderr] (MSC service thread 1-4) at org.jboss.weld.bootstrap.events.AbstractContainerEvent.fire(AbstractContainerEvent.java:53)
> 13:41:48,985 ERROR [stderr] (MSC service thread 1-4) at org.jboss.weld.bootstrap.events.AbstractDefinitionContainerEvent.fire(AbstractDefinitionContainerEvent.java:44)
> 13:41:48,985 ERROR [stderr] (MSC service thread 1-4) at org.jboss.weld.bootstrap.events.ProcessManagedBeanImpl.fire(ProcessManagedBeanImpl.java:31)
> 13:41:48,985 ERROR [stderr] (MSC service thread 1-4) at org.jboss.weld.bootstrap.events.ContainerLifecycleEvents.fireProcessBean(ContainerLifecycleEvents.java:246)
> 13:41:48,985 ERROR [stderr] (MSC service thread 1-4) at org.jboss.weld.bootstrap.events.ContainerLifecycleEvents.fireProcessBean(ContainerLifecycleEvents.java:240)
> 13:41:48,985 ERROR [stderr] (MSC service thread 1-4) at org.jboss.weld.bootstrap.AbstractBeanDeployer.fireProcessBeanEvents(AbstractBeanDeployer.java:128)
> 13:41:48,985 ERROR [stderr] (MSC service thread 1-4) at org.jboss.weld.bootstrap.BeanDeployer.deploy(BeanDeployer.java:331)
> 13:41:48,985 ERROR [stderr] (MSC service thread 1-4) at org.jboss.weld.bootstrap.BeanDeployment.deployBeans(BeanDeployment.java:264)
> 13:41:48,985 ERROR [stderr] (MSC service thread 1-4) at org.jboss.weld.bootstrap.WeldStartup.deployBeans(WeldStartup.java:453)
> 13:41:48,985 ERROR [stderr] (MSC service thread 1-4) at org.jboss.weld.bootstrap.WeldBootstrap.deployBeans(WeldBootstrap.java:86)
> 13:41:48,985 ERROR [stderr] (MSC service thread 1-4) at org.jboss.as.weld.WeldStartService.start(WeldStartService.java:97)
> 13:41:48,985 ERROR [stderr] (MSC service thread 1-4) at org.jboss.msc.service.ServiceControllerImpl$StartTask.startService(ServiceControllerImpl.java:1739)
> 13:41:48,985 ERROR [stderr] (MSC service thread 1-4) at org.jboss.msc.service.ServiceControllerImpl$StartTask.execute(ServiceControllerImpl.java:1701)
> 13:41:48,985 ERROR [stderr] (MSC service thread 1-4) at org.jboss.msc.service.ServiceControllerImpl$ControllerTask.run(ServiceControllerImpl.java:1559)
> 13:41:48,985 ERROR [stderr] (MSC service thread 1-4) at org.jboss.threads.ContextClassLoaderSavingRunnable.run(ContextClassLoaderSavingRunnable.java:35)
> 13:41:48,985 ERROR [stderr] (MSC service thread 1-4) at org.jboss.threads.EnhancedQueueExecutor.safeRun(EnhancedQueueExecutor.java:1982)
> 13:41:48,985 ERROR [stderr] (MSC service thread 1-4) at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.doRunTask(EnhancedQueueExecutor.java:1486)
> 13:41:48,985 ERROR [stderr] (MSC service thread 1-4) at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.run(EnhancedQueueExecutor.java:1377)
> 13:41:48,985 ERROR [stderr] (MSC service thread 1-4) at java.lang.Thread.run(Thread.java:748)
> {code}
> This happens when a deployment is deployed. There is no issue with ConfigSource class as it reads the file correctly on the first time.
>
--
This message was sent by Atlassian Jira
(v7.13.8#713008)
6 years, 5 months
[JBoss JIRA] (WFWIP-279) FaultTolerance subsystem gets MP Config properties values too many times
by Ivan Straka (Jira)
[ https://issues.redhat.com/browse/WFWIP-279?page=com.atlassian.jira.plugin... ]
Ivan Straka edited comment on WFWIP-279 at 12/6/19 7:58 AM:
------------------------------------------------------------
The exception was actually a bug in the test that left the file opened. However https://github.com/istraka/eap-microprofile-test-suite/blob/mp-metrics-ft... is still called too many times.
was (Author: istraka):
The exception was actually a bug in the test that left the file opened. However https://github.com/istraka/eap-microprofile-test-suite/blob/mp-metrics-ft... is still called to many times.
> FaultTolerance subsystem gets MP Config properties values too many times
> ------------------------------------------------------------------------
>
> Key: WFWIP-279
> URL: https://issues.redhat.com/browse/WFWIP-279
> Project: WildFly WIP
> Issue Type: Bug
> Components: MP Config, MP Fault Tolerance
> Reporter: Ivan Straka
> Assignee: Radoslav Husar
> Priority: Blocker
>
> I have a fail safe service that would normally return a value provided by a provider A or a value from provider B on fallback (in case the provider A throws an exception). Providers return values based on MP Config property. Source of the properties is a ConfigSource class that reads a property file.
> The issue is ConfigSource#getProperties method is called too may times that results to Too many open files exception:
> {code:java}
> 13:41:48,959 ERROR [stderr] (MSC service thread 1-4) java.io.FileNotFoundException: /home/istraka/repositories/github/eap-microprofile-test-suite/microprofile-metrics/target/test-classes/org/jboss/eap/qe/microprofile/metrics/integration/ft/ft-custom-metric.properties (Too many open files)
> 13:41:48,960 ERROR [stderr] (MSC service thread 1-4) at java.io.FileInputStream.open0(Native Method)
> 13:41:48,960 ERROR [stderr] (MSC service thread 1-4) at java.io.FileInputStream.open(FileInputStream.java:195)
> 13:41:48,960 ERROR [stderr] (MSC service thread 1-4) at java.io.FileInputStream.<init>(FileInputStream.java:138)
> 13:41:48,960 ERROR [stderr] (MSC service thread 1-4) at java.io.FileInputStream.<init>(FileInputStream.java:93)
> 13:41:48,984 ERROR [stderr] (MSC service thread 1-4) at org.jboss.eap.qe.microprofile.metrics.integration.ft.FTCustomConfigSource.getProperties(FTCustomConfigSource.java:25)
> 13:41:48,984 ERROR [stderr] (MSC service thread 1-4) at org.jboss.eap.qe.microprofile.metrics.integration.ft.FTCustomConfigSource.getValue(FTCustomConfigSource.java:37)
> 13:41:48,984 ERROR [stderr] (MSC service thread 1-4) at io.smallrye.config.SmallRyeConfig.getValue(SmallRyeConfig.java:84)
> 13:41:48,984 ERROR [stderr] (MSC service thread 1-4) at io.smallrye.config.SmallRyeConfig.getOptionalValue(SmallRyeConfig.java:106)
> 13:41:48,984 ERROR [stderr] (MSC service thread 1-4) at io.smallrye.faulttolerance.config.FaultToleranceOperation.getConfigStatus(FaultToleranceOperation.java:250)
> 13:41:48,984 ERROR [stderr] (MSC service thread 1-4) at io.smallrye.faulttolerance.config.FaultToleranceOperation.getConfig(FaultToleranceOperation.java:209)
> 13:41:48,984 ERROR [stderr] (MSC service thread 1-4) at io.smallrye.faulttolerance.config.FaultToleranceOperation.of(FaultToleranceOperation.java:51)
> 13:41:48,984 ERROR [stderr] (MSC service thread 1-4) at io.smallrye.faulttolerance.HystrixExtension.collectFaultToleranceOperations(HystrixExtension.java:112)
> 13:41:48,984 ERROR [stderr] (MSC service thread 1-4) at sun.reflect.GeneratedMethodAccessor10.invoke(Unknown Source)
> 13:41:48,984 ERROR [stderr] (MSC service thread 1-4) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> 13:41:48,984 ERROR [stderr] (MSC service thread 1-4) at java.lang.reflect.Method.invoke(Method.java:498)
> 13:41:48,984 ERROR [stderr] (MSC service thread 1-4) at org.jboss.weld.injection.StaticMethodInjectionPoint.invoke(StaticMethodInjectionPoint.java:95)
> 13:41:48,984 ERROR [stderr] (MSC service thread 1-4) at org.jboss.weld.injection.StaticMethodInjectionPoint.invoke(StaticMethodInjectionPoint.java:85)
> 13:41:48,984 ERROR [stderr] (MSC service thread 1-4) at org.jboss.weld.injection.MethodInvocationStrategy$SimpleMethodInvocationStrategy.invoke(MethodInvocationStrategy.java:168)
> 13:41:48,984 ERROR [stderr] (MSC service thread 1-4) at org.jboss.weld.event.ObserverMethodImpl.sendEvent(ObserverMethodImpl.java:330)
> 13:41:48,984 ERROR [stderr] (MSC service thread 1-4) at org.jboss.weld.event.ExtensionObserverMethodImpl.sendEvent(ExtensionObserverMethodImpl.java:123)
> 13:41:48,984 ERROR [stderr] (MSC service thread 1-4) at org.jboss.weld.event.ObserverMethodImpl.sendEvent(ObserverMethodImpl.java:308)
> 13:41:48,984 ERROR [stderr] (MSC service thread 1-4) at org.jboss.weld.event.ObserverMethodImpl.notify(ObserverMethodImpl.java:286)
> 13:41:48,985 ERROR [stderr] (MSC service thread 1-4) at javax.enterprise.inject.spi.ObserverMethod.notify(ObserverMethod.java:124)
> 13:41:48,985 ERROR [stderr] (MSC service thread 1-4) at org.jboss.weld.util.Observers.notify(Observers.java:166)
> 13:41:48,985 ERROR [stderr] (MSC service thread 1-4) at org.jboss.weld.event.ObserverNotifier.notifySyncObservers(ObserverNotifier.java:285)
> 13:41:48,985 ERROR [stderr] (MSC service thread 1-4) at org.jboss.weld.event.ObserverNotifier.notify(ObserverNotifier.java:273)
> 13:41:48,985 ERROR [stderr] (MSC service thread 1-4) at org.jboss.weld.event.ObserverNotifier.fireEvent(ObserverNotifier.java:177)
> 13:41:48,985 ERROR [stderr] (MSC service thread 1-4) at org.jboss.weld.event.ObserverNotifier.fireEvent(ObserverNotifier.java:171)
> 13:41:48,985 ERROR [stderr] (MSC service thread 1-4) at org.jboss.weld.bootstrap.events.AbstractContainerEvent.fire(AbstractContainerEvent.java:53)
> 13:41:48,985 ERROR [stderr] (MSC service thread 1-4) at org.jboss.weld.bootstrap.events.AbstractDefinitionContainerEvent.fire(AbstractDefinitionContainerEvent.java:44)
> 13:41:48,985 ERROR [stderr] (MSC service thread 1-4) at org.jboss.weld.bootstrap.events.ProcessManagedBeanImpl.fire(ProcessManagedBeanImpl.java:31)
> 13:41:48,985 ERROR [stderr] (MSC service thread 1-4) at org.jboss.weld.bootstrap.events.ContainerLifecycleEvents.fireProcessBean(ContainerLifecycleEvents.java:246)
> 13:41:48,985 ERROR [stderr] (MSC service thread 1-4) at org.jboss.weld.bootstrap.events.ContainerLifecycleEvents.fireProcessBean(ContainerLifecycleEvents.java:240)
> 13:41:48,985 ERROR [stderr] (MSC service thread 1-4) at org.jboss.weld.bootstrap.AbstractBeanDeployer.fireProcessBeanEvents(AbstractBeanDeployer.java:128)
> 13:41:48,985 ERROR [stderr] (MSC service thread 1-4) at org.jboss.weld.bootstrap.BeanDeployer.deploy(BeanDeployer.java:331)
> 13:41:48,985 ERROR [stderr] (MSC service thread 1-4) at org.jboss.weld.bootstrap.BeanDeployment.deployBeans(BeanDeployment.java:264)
> 13:41:48,985 ERROR [stderr] (MSC service thread 1-4) at org.jboss.weld.bootstrap.WeldStartup.deployBeans(WeldStartup.java:453)
> 13:41:48,985 ERROR [stderr] (MSC service thread 1-4) at org.jboss.weld.bootstrap.WeldBootstrap.deployBeans(WeldBootstrap.java:86)
> 13:41:48,985 ERROR [stderr] (MSC service thread 1-4) at org.jboss.as.weld.WeldStartService.start(WeldStartService.java:97)
> 13:41:48,985 ERROR [stderr] (MSC service thread 1-4) at org.jboss.msc.service.ServiceControllerImpl$StartTask.startService(ServiceControllerImpl.java:1739)
> 13:41:48,985 ERROR [stderr] (MSC service thread 1-4) at org.jboss.msc.service.ServiceControllerImpl$StartTask.execute(ServiceControllerImpl.java:1701)
> 13:41:48,985 ERROR [stderr] (MSC service thread 1-4) at org.jboss.msc.service.ServiceControllerImpl$ControllerTask.run(ServiceControllerImpl.java:1559)
> 13:41:48,985 ERROR [stderr] (MSC service thread 1-4) at org.jboss.threads.ContextClassLoaderSavingRunnable.run(ContextClassLoaderSavingRunnable.java:35)
> 13:41:48,985 ERROR [stderr] (MSC service thread 1-4) at org.jboss.threads.EnhancedQueueExecutor.safeRun(EnhancedQueueExecutor.java:1982)
> 13:41:48,985 ERROR [stderr] (MSC service thread 1-4) at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.doRunTask(EnhancedQueueExecutor.java:1486)
> 13:41:48,985 ERROR [stderr] (MSC service thread 1-4) at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.run(EnhancedQueueExecutor.java:1377)
> 13:41:48,985 ERROR [stderr] (MSC service thread 1-4) at java.lang.Thread.run(Thread.java:748)
> {code}
> This happens when a deployment is deployed. There is no issue with ConfigSource class as it reads the file correctly on the first time.
>
--
This message was sent by Atlassian Jira
(v7.13.8#713008)
6 years, 5 months