[JBoss JIRA] (DROOLS-915) LeftTuples don't get deleted from segment memories when the segment itself is unlinked
by Dmitry Toptygin (JIRA)
[ https://issues.jboss.org/browse/DROOLS-915?page=com.atlassian.jira.plugin... ]
Dmitry Toptygin commented on DROOLS-915:
----------------------------------------
Maybe this comment will help if anybody experiences this issue in the field.
This defect, while not a true memory leak, has manifested itself for us this way:
In the exaggerated rule example below, if AlarmFacts are rarely created (let's say one per day),
and if ClearEvents come in very frequently (let's say once a second), then
every day kSession would maintain references to unnecessary ClearEvents (up to 86000 of them).
These ClearEvents are expired and not visible to the rules, kSession.getFactHandles() does not return them.
But they are being kept in JVM memory by JoinNodeLeftTuple(s), via EventHactHandle.
In order to release those ClearEvents, an artificial AlarmFact can be inserted
periodically, which is not practical, or the rule can be rewritten - see
"fixed rule example" at the end of the comment.
--- begin bad rule example ---
{code:java}
package rules
import org.example.memoryleak.events.ClearEvent
import org.example.memoryleak.events.AlarmFact
declare org.example.memoryleak.events.ClearEvent
@role( event )
@timestamp( eventTimestamp )
@expires( 5s )
end
rule "Delete alarm on clearEvent"
when
ClearEvent($devId: deviceId)
$alarm: AlarmFact($devId == deviceId)
then
delete($alarm);
end
{code}
--- end bad rule example ---
--- begin fixed rule example ---
{code:java}
...
rule "Delete alarm on clearEvent"
when
$alarm: AlarmFact($devId: deviceId)
ClearEvent(deviceId == $devId)
then
delete($alarm);
end
{code}
--- end fixed rule example ---
> LeftTuples don't get deleted from segment memories when the segment itself is unlinked
> --------------------------------------------------------------------------------------
>
> Key: DROOLS-915
> URL: https://issues.jboss.org/browse/DROOLS-915
> Project: Drools
> Issue Type: Bug
> Reporter: Mario Fusco
> Assignee: Mario Fusco
>
> LeftTuples should be deleted from segment memories when the segment itself is unlinked. At the moment they remain in the segment memory forever until the segment is linked in again. This is not a memory leak because the segment memory cannot grow when the segment itself is unlinked, but just an optimization to free memory as early as possible.
--
This message was sent by Atlassian JIRA
(v6.4.11#64026)
10 years
[JBoss JIRA] (WFCORE-1523) Removing of non-existent policy-module finishes with outcome success
by Bartosz Spyrko-Śmietanko (JIRA)
[ https://issues.jboss.org/browse/WFCORE-1523?page=com.atlassian.jira.plugi... ]
Bartosz Spyrko-Śmietanko moved WFLY-6101 to WFCORE-1523:
--------------------------------------------------------
Project: WildFly Core (was: WildFly)
Key: WFCORE-1523 (was: WFLY-6101)
Component/s: Domain Management
Security
(was: Domain Management)
(was: Security)
Affects Version/s: 2.1.0.Final
(was: 10.0.0.Final)
> Removing of non-existent policy-module finishes with outcome success
> --------------------------------------------------------------------
>
> Key: WFCORE-1523
> URL: https://issues.jboss.org/browse/WFCORE-1523
> Project: WildFly Core
> Issue Type: Bug
> Components: Domain Management, Security
> Affects Versions: 2.1.0.Final
> Reporter: Ondrej Lukas
> Assignee: Bartosz Spyrko-Śmietanko
> Priority: Minor
>
> In case when non-existent policy-module is removed through Management CLI, operation should finish with failure. However it finishes with outcome success and nothing is changed. It can be confusing since wrong command seems same as correct command.
--
This message was sent by Atlassian JIRA
(v6.4.11#64026)
10 years
[JBoss JIRA] (WFLY-6566) SAR deployer uses wrong MBean class to resolve source Method for property injection
by Bartosz Spyrko-Śmietanko (JIRA)
[ https://issues.jboss.org/browse/WFLY-6566?page=com.atlassian.jira.plugin.... ]
Bartosz Spyrko-Śmietanko updated WFLY-6566:
-------------------------------------------
Description:
If using a <value-factory> or <inject> element with "parameter" attribute in jboss-service.xml to inject a value from one bean to another, a "java.lang.IllegalArgumentException: object is not an instance of declaring class" error is raised during deployment.
jboss-service.xml
{noformat}
<server xmlns="urn:jboss:service:7.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="urn:jboss:service:7.0 jboss-service_7_0.xsd">
<mbean code="com.test.redhat.mbean.OtherValueFactory" name="test:type=OtherValueFactory">
<attribute name="WelcomeString">Welcome</attribute>
<attribute name="CustName">Other</attribute>
</mbean>
<mbean code="com.test.redhat.mbean.TestValueFactory" name="test:type=SarTestValueFactory">
<depends>test:type=OtherValueFactory</depends>
<attribute name="WelcomeString">Welcome</attribute>
<attribute name="CustName">
<value-factory bean="test:type=OtherValueFactory" method="getNameOfCustomer">
<parameter class="java.lang.String">Foo</parameter>
</value-factory>
</attribute>
</mbean>
</server>
{noformat}
Full error:
{noformat}
16:54:36,505 INFO [org.jboss.as.server.deployment] (MSC service thread 1-3) WFLYSRV0027: Starting deployment of "test.sar" (runtime-name: "test.sar")
16:54:36,690 WARN [org.jboss.msc.inject] (MSC service thread 1-2) MSC000100: Unexpected failure to uninject public void com.test.redhat.mbean.TestValueFactory.setCustName(java.lang.String): java.lang.NullPointerException
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:497)
at org.jboss.msc.value.MethodValue.getValue(MethodValue.java:62)
at org.jboss.msc.value.CachedValue.getValue(CachedValue.java:54)
at org.jboss.msc.value.Values.getValues(Values.java:68)
at org.jboss.msc.value.Values.getValues(Values.java:82)
at org.jboss.msc.inject.MethodInjector.uninject(MethodInjector.java:119)
at org.jboss.msc.service.ServiceControllerImpl$StartTask.performInjections(ServiceControllerImpl.java:1923)
at org.jboss.msc.service.ServiceControllerImpl$StartTask.run(ServiceControllerImpl.java:1876)
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)
16:54:36,691 ERROR [org.jboss.msc.service.fail] (MSC service thread 1-2) MSC000001: Failed to start service jboss.mbean.service.test:type=SarTestValueFactory.create: org.jboss.msc.service.StartException in service jboss.mbean.service.test:type=SarTestValueFactory.create: Failed to start service
at org.jboss.msc.service.ServiceControllerImpl$StartTask.run(ServiceControllerImpl.java:1904)
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)
Caused by: org.jboss.msc.inject.InjectionException: Injection failed
at org.jboss.msc.inject.MethodInjector.inject(MethodInjector.java:102)
at org.jboss.msc.service.ServiceControllerImpl.doInject(ServiceControllerImpl.java:1672)
at org.jboss.msc.service.ServiceControllerImpl.access$2000(ServiceControllerImpl.java:51)
at org.jboss.msc.service.ServiceControllerImpl$StartTask.performInjections(ServiceControllerImpl.java:1917)
at org.jboss.msc.service.ServiceControllerImpl$StartTask.run(ServiceControllerImpl.java:1876)
... 3 more
Caused by: java.lang.IllegalArgumentException: object is not an instance of declaring class
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:497)
at org.jboss.msc.value.MethodValue.getValue(MethodValue.java:62)
at org.jboss.msc.value.CachedValue.getValue(CachedValue.java:54)
at org.jboss.msc.value.Values.getValues(Values.java:68)
at org.jboss.msc.value.Values.getValues(Values.java:82)
at org.jboss.msc.inject.MethodInjector.inject(MethodInjector.java:92)
... 7 more
16:54:36,697 INFO [com.test.redhat.mbean.OtherValueFactory] (ServerService Thread Pool -- 58) >> TestValuFactory.start() invoked
16:54:36,698 INFO [stdout] (ServerService Thread Pool -- 58) TestValuFactory.start() invoked
16:54:36,776 ERROR [org.jboss.as.controller.management-operation] (DeploymentScanner-threads - 1) WFLYCTL0013: Operation ("deploy") failed - address: ([("deployment" => "test.sar")]) - failure description: {"WFLYCTL0080: Failed services" => {"jboss.mbean.service.test:type=SarTestValueFactory.create" => "org.jboss.msc.service.StartException in service jboss.mbean.service.test:type=SarTestValueFactory.create: Failed to start service
Caused by: org.jboss.msc.inject.InjectionException: Injection failed
Caused by: java.lang.IllegalArgumentException: object is not an instance of declaring class"}}
{noformat}
was:
If using a <value-factory> or <inject> element with "parameter" attribute in jboss-service.xml to inject a value from one bean to another, a "java.lang.IllegalArgumentException: object is not an instance of declaring class" error is raised during deployment.
jboss-service.xml
{noformat}
<server xmlns="urn:jboss:service:7.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="urn:jboss:service:7.0 jboss-service_7_0.xsd">
<mbean code="com.test.redhat.mbean.OtherValueFactory" name="test:type=OtherValueFactory">
<attribute name="WelcomeString">Welcome</attribute>
<attribute name="CustName">Other</attribute>
</mbean>
<mbean code="com.test.redhat.mbean.TestValueFactory" name="test:type=SarTestValueFactory">
<depends>test:type=OtherValueFactory</depends>
<attribute name="WelcomeString">Welcome</attribute>
<attribute name="CustName">
<value-factory bean="test:type=OtherValueFactory" method="getNameOfCustomer">
<parameter class="java.lang.String">Alain Van Daele</parameter>
</value-factory>
</attribute>
</mbean>
</server>
{noformat}
Full error:
{noformat}
16:54:36,505 INFO [org.jboss.as.server.deployment] (MSC service thread 1-3) WFLYSRV0027: Starting deployment of "test.sar" (runtime-name: "test.sar")
16:54:36,690 WARN [org.jboss.msc.inject] (MSC service thread 1-2) MSC000100: Unexpected failure to uninject public void com.test.redhat.mbean.TestValueFactory.setCustName(java.lang.String): java.lang.NullPointerException
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:497)
at org.jboss.msc.value.MethodValue.getValue(MethodValue.java:62)
at org.jboss.msc.value.CachedValue.getValue(CachedValue.java:54)
at org.jboss.msc.value.Values.getValues(Values.java:68)
at org.jboss.msc.value.Values.getValues(Values.java:82)
at org.jboss.msc.inject.MethodInjector.uninject(MethodInjector.java:119)
at org.jboss.msc.service.ServiceControllerImpl$StartTask.performInjections(ServiceControllerImpl.java:1923)
at org.jboss.msc.service.ServiceControllerImpl$StartTask.run(ServiceControllerImpl.java:1876)
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)
16:54:36,691 ERROR [org.jboss.msc.service.fail] (MSC service thread 1-2) MSC000001: Failed to start service jboss.mbean.service.test:type=SarTestValueFactory.create: org.jboss.msc.service.StartException in service jboss.mbean.service.test:type=SarTestValueFactory.create: Failed to start service
at org.jboss.msc.service.ServiceControllerImpl$StartTask.run(ServiceControllerImpl.java:1904)
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)
Caused by: org.jboss.msc.inject.InjectionException: Injection failed
at org.jboss.msc.inject.MethodInjector.inject(MethodInjector.java:102)
at org.jboss.msc.service.ServiceControllerImpl.doInject(ServiceControllerImpl.java:1672)
at org.jboss.msc.service.ServiceControllerImpl.access$2000(ServiceControllerImpl.java:51)
at org.jboss.msc.service.ServiceControllerImpl$StartTask.performInjections(ServiceControllerImpl.java:1917)
at org.jboss.msc.service.ServiceControllerImpl$StartTask.run(ServiceControllerImpl.java:1876)
... 3 more
Caused by: java.lang.IllegalArgumentException: object is not an instance of declaring class
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:497)
at org.jboss.msc.value.MethodValue.getValue(MethodValue.java:62)
at org.jboss.msc.value.CachedValue.getValue(CachedValue.java:54)
at org.jboss.msc.value.Values.getValues(Values.java:68)
at org.jboss.msc.value.Values.getValues(Values.java:82)
at org.jboss.msc.inject.MethodInjector.inject(MethodInjector.java:92)
... 7 more
16:54:36,697 INFO [com.test.redhat.mbean.OtherValueFactory] (ServerService Thread Pool -- 58) >> TestValuFactory.start() invoked
16:54:36,698 INFO [stdout] (ServerService Thread Pool -- 58) TestValuFactory.start() invoked
16:54:36,776 ERROR [org.jboss.as.controller.management-operation] (DeploymentScanner-threads - 1) WFLYCTL0013: Operation ("deploy") failed - address: ([("deployment" => "test.sar")]) - failure description: {"WFLYCTL0080: Failed services" => {"jboss.mbean.service.test:type=SarTestValueFactory.create" => "org.jboss.msc.service.StartException in service jboss.mbean.service.test:type=SarTestValueFactory.create: Failed to start service
Caused by: org.jboss.msc.inject.InjectionException: Injection failed
Caused by: java.lang.IllegalArgumentException: object is not an instance of declaring class"}}
{noformat}
> SAR deployer uses wrong MBean class to resolve source Method for property injection
> -----------------------------------------------------------------------------------
>
> Key: WFLY-6566
> URL: https://issues.jboss.org/browse/WFLY-6566
> Project: WildFly
> Issue Type: Bug
> Components: JMX, Server
> Affects Versions: 10.0.0.Final
> Reporter: Bartosz Spyrko-Śmietanko
> Assignee: Bartosz Spyrko-Śmietanko
>
> If using a <value-factory> or <inject> element with "parameter" attribute in jboss-service.xml to inject a value from one bean to another, a "java.lang.IllegalArgumentException: object is not an instance of declaring class" error is raised during deployment.
> jboss-service.xml
> {noformat}
> <server xmlns="urn:jboss:service:7.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="urn:jboss:service:7.0 jboss-service_7_0.xsd">
> <mbean code="com.test.redhat.mbean.OtherValueFactory" name="test:type=OtherValueFactory">
> <attribute name="WelcomeString">Welcome</attribute>
> <attribute name="CustName">Other</attribute>
> </mbean>
> <mbean code="com.test.redhat.mbean.TestValueFactory" name="test:type=SarTestValueFactory">
> <depends>test:type=OtherValueFactory</depends>
> <attribute name="WelcomeString">Welcome</attribute>
> <attribute name="CustName">
> <value-factory bean="test:type=OtherValueFactory" method="getNameOfCustomer">
> <parameter class="java.lang.String">Foo</parameter>
> </value-factory>
> </attribute>
> </mbean>
> </server>
> {noformat}
> Full error:
> {noformat}
> 16:54:36,505 INFO [org.jboss.as.server.deployment] (MSC service thread 1-3) WFLYSRV0027: Starting deployment of "test.sar" (runtime-name: "test.sar")
> 16:54:36,690 WARN [org.jboss.msc.inject] (MSC service thread 1-2) MSC000100: Unexpected failure to uninject public void com.test.redhat.mbean.TestValueFactory.setCustName(java.lang.String): java.lang.NullPointerException
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
> at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> at java.lang.reflect.Method.invoke(Method.java:497)
> at org.jboss.msc.value.MethodValue.getValue(MethodValue.java:62)
> at org.jboss.msc.value.CachedValue.getValue(CachedValue.java:54)
> at org.jboss.msc.value.Values.getValues(Values.java:68)
> at org.jboss.msc.value.Values.getValues(Values.java:82)
> at org.jboss.msc.inject.MethodInjector.uninject(MethodInjector.java:119)
> at org.jboss.msc.service.ServiceControllerImpl$StartTask.performInjections(ServiceControllerImpl.java:1923)
> at org.jboss.msc.service.ServiceControllerImpl$StartTask.run(ServiceControllerImpl.java:1876)
> 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)
> 16:54:36,691 ERROR [org.jboss.msc.service.fail] (MSC service thread 1-2) MSC000001: Failed to start service jboss.mbean.service.test:type=SarTestValueFactory.create: org.jboss.msc.service.StartException in service jboss.mbean.service.test:type=SarTestValueFactory.create: Failed to start service
> at org.jboss.msc.service.ServiceControllerImpl$StartTask.run(ServiceControllerImpl.java:1904)
> 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)
> Caused by: org.jboss.msc.inject.InjectionException: Injection failed
> at org.jboss.msc.inject.MethodInjector.inject(MethodInjector.java:102)
> at org.jboss.msc.service.ServiceControllerImpl.doInject(ServiceControllerImpl.java:1672)
> at org.jboss.msc.service.ServiceControllerImpl.access$2000(ServiceControllerImpl.java:51)
> at org.jboss.msc.service.ServiceControllerImpl$StartTask.performInjections(ServiceControllerImpl.java:1917)
> at org.jboss.msc.service.ServiceControllerImpl$StartTask.run(ServiceControllerImpl.java:1876)
> ... 3 more
> Caused by: java.lang.IllegalArgumentException: object is not an instance of declaring class
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
> at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> at java.lang.reflect.Method.invoke(Method.java:497)
> at org.jboss.msc.value.MethodValue.getValue(MethodValue.java:62)
> at org.jboss.msc.value.CachedValue.getValue(CachedValue.java:54)
> at org.jboss.msc.value.Values.getValues(Values.java:68)
> at org.jboss.msc.value.Values.getValues(Values.java:82)
> at org.jboss.msc.inject.MethodInjector.inject(MethodInjector.java:92)
> ... 7 more
> 16:54:36,697 INFO [com.test.redhat.mbean.OtherValueFactory] (ServerService Thread Pool -- 58) >> TestValuFactory.start() invoked
> 16:54:36,698 INFO [stdout] (ServerService Thread Pool -- 58) TestValuFactory.start() invoked
> 16:54:36,776 ERROR [org.jboss.as.controller.management-operation] (DeploymentScanner-threads - 1) WFLYCTL0013: Operation ("deploy") failed - address: ([("deployment" => "test.sar")]) - failure description: {"WFLYCTL0080: Failed services" => {"jboss.mbean.service.test:type=SarTestValueFactory.create" => "org.jboss.msc.service.StartException in service jboss.mbean.service.test:type=SarTestValueFactory.create: Failed to start service
> Caused by: org.jboss.msc.inject.InjectionException: Injection failed
> Caused by: java.lang.IllegalArgumentException: object is not an instance of declaring class"}}
> {noformat}
--
This message was sent by Atlassian JIRA
(v6.4.11#64026)
10 years
[JBoss JIRA] (DROOLS-1157) New Drools/jBPM Project Wizards are broken
by Andrej Podhradsky (JIRA)
[ https://issues.jboss.org/browse/DROOLS-1157?page=com.atlassian.jira.plugi... ]
Andrej Podhradsky updated DROOLS-1157:
--------------------------------------
Labels: release_notes (was: )
> New Drools/jBPM Project Wizards are broken
> ------------------------------------------
>
> Key: DROOLS-1157
> URL: https://issues.jboss.org/browse/DROOLS-1157
> Project: Drools
> Issue Type: Bug
> Components: eclipse plugin
> Affects Versions: 6.4.0.Final
> Environment: Eclipse Mars, all platforms
> Reporter: Robert (Bob) Brodt
> Assignee: Robert (Bob) Brodt
> Priority: Blocker
> Labels: release_notes
>
> Regressions were introduced in 6.4.0 of the Drools/jBPM Eclipse plugins (droolsjbpm-tools project) which caused the New Project Wizards to generate sample projects that do not build or run.
--
This message was sent by Atlassian JIRA
(v6.4.11#64026)
10 years