[JBoss JIRA] (DROOLS-1014) Drools OOM when loading session
by Artur Kronenberg (JIRA)
[ https://issues.jboss.org/browse/DROOLS-1014?page=com.atlassian.jira.plugi... ]
Artur Kronenberg edited comment on DROOLS-1014 at 12/22/15 10:09 AM:
---------------------------------------------------------------------
Hi Mario,
I checked and I have these arguments for my run configuration:
-Xms1024m -Xmx2048m
I would expect that 2 GB should be enough for my current setup. Just a bit more info:
I noted, that this also happens when I run fireAllRules(). It bombs out with this exception: http://pastebin.com/J7cP60fh
It prints this message to the console and then hangs until the exception occurs:
Hibernate: update SessionInfo set lastModificationDate=?, rulesByteArray=?, startDate=?, OPTLOCK=? where id=? and OPTLOCK=?
I will attempt to write something reproduceable, but I can post a snippet of what it looks like what I am doing:
persistence.xml: http://pastebin.com/64AVNKG0
My KieServiceFactory: http://pastebin.com/9U7KhBah
This essentially sets up my kie environment so I can quickly create sessions if needed etc. It mainly lives there for guice reasons because dependency injection and PrivateModules needed this (I think the class should not be called a factory but yeah ..)
My Sessionfacade, responsible for creating sessions. It does so by getOrCreate. I store the ID of the session I want in a different table. If a session by my name exist, I load it, if not I create it:
http://pastebin.com/Sx6p6dcY
And finally a transaction helper I use to insert a lot of events/facts or do anything with session. Basically each time I do a insert/delete command on a session or entrypoint, I wrap the call into my TransactionHelper. I do wonder if I need to do the same for fireAllRules, but I believe drools internally handles the transactions for me with safe points:
http://pastebin.com/2HETaWQY
The SessionHolder object is an internal representation. It acts as a delegate that internally stores some stuff like what events have been submitted to what entrypoints, or delete etc or when the session has been created. It's purely for reporting and has no functionality other than delegating to the actual session.
If I am using this incorrectly, I apologise. I couldn't find much more details on how to use the JPA stuff. If I run the same with less objects (for example 20 instead of 6k+ I have no issues loading and storing the session).
I do wonder if I need the JTA stuff at all, but I believe it's mandatory to use JPA with drools. From the stacktraces though it does not appear to be a transaction issue.
EDIT:
forgot, this is how I insert and execute the session rules:
http://pastebin.com/Kz6kFhpC
I can not use fireUntilHalt because of the JPA aspect, so I do it manually every time anything changes with my session.
was (Author: pandaadb):
Hi Mario,
I checked and I have these arguments for my run configuration:
-Xms1024m -Xmx2048m
I would expect that 2 GB should be enough for my current setup. Just a bit more info:
I noted, that this also happens when I run fireAllRules(). It bombs out with this exception: http://pastebin.com/J7cP60fh
It prints this message to the console and then hangs until the exception occurs:
Hibernate: update SessionInfo set lastModificationDate=?, rulesByteArray=?, startDate=?, OPTLOCK=? where id=? and OPTLOCK=?
I will attempt to write something reproduceable, but I can post a snippet of what it looks like what I am doing:
persistence.xml: http://pastebin.com/64AVNKG0
My KieServiceFactory: http://pastebin.com/9U7KhBah
This essentially sets up my kie environment so I can quickly create sessions if needed etc. It mainly lives there for guice reasons because dependency injection and PrivateModules needed this (I think the class should not be called a factory but yeah ..)
My Sessionfacade, responsible for creating sessions. It does so by getOrCreate. I store the ID of the session I want in a different table. If a session by my name exist, I load it, if not I create it:
http://pastebin.com/Sx6p6dcY
And finally a transaction helper I use to insert a lot of events/facts or do anything with session. Basically each time I do a insert/delete command on a session or entrypoint, I wrap the call into my TransactionHelper. I do wonder if I need to do the same for fireAllRules, but I believe drools internally handles the transactions for me with safe points:
http://pastebin.com/2HETaWQY
The SessionHolder object is an internal representation. It acts as a delegate that internally stores some stuff like what events have been submitted to what entrypoints, or delete etc or when the session has been created. It's purely for reporting and has no functionality other than delegating to the actual session.
If I am using this incorrectly, I apologise. I couldn't find much more details on how to use the JPA stuff. If I run the same with less objects (for example 20 instead of 6k+ I have no issues loading and storing the session).
I do wonder if I need the JTA stuff at all, but I believe it's mandatory to use JPA with drools. From the stacktraces though it does not appear to be a transaction issue.
> Drools OOM when loading session
> -------------------------------
>
> Key: DROOLS-1014
> URL: https://issues.jboss.org/browse/DROOLS-1014
> Project: Drools
> Issue Type: Bug
> Components: core engine
> Affects Versions: 6.3.0.Final
> Environment: Mac OS 10.10.5, Eclipse Mars Release, Java 1.8, Drools 6.3.0.Final
> Reporter: Artur Kronenberg
> Assignee: Mario Fusco
> Priority: Critical
>
> I ran into an issue loading the session from my JPA.
> I am getting this stacktrace:
> http://pastebin.com/PMKpdBWM
> This is happening for this rule:
> http://pastebin.com/HZmLmsEH
> And this module:
> http://pastebin.com/2Q6k73tC
> What I am doing is:
> 1. Create a new session
> 2. Insert an ApplicationEvent
> 3. fireAllRules
> 4. Reload -> OOM
> The ApplicationEvent has a list of 6345 facts in there. I load them from a CSV file, and use drools to insert them into my knowledge base as facts.
> When I restart my server and have the session reloaded, it ooms when trying to deserialize the session.
> I am still looking for a workaround. I am not sure what is happening and could not find any more info at this point.
> I am using:
> JPA + Hibernate 4.2.21.Final
> org.codehaus.btm:btm:2.1.4 as a standalone JTA platform
> Let me know if there's any other info needed.
> Thanks,
> Artur
--
This message was sent by Atlassian JIRA
(v6.4.11#64026)
10 years, 7 months
[JBoss JIRA] (DROOLS-1014) Drools OOM when loading session
by Artur Kronenberg (JIRA)
[ https://issues.jboss.org/browse/DROOLS-1014?page=com.atlassian.jira.plugi... ]
Artur Kronenberg commented on DROOLS-1014:
------------------------------------------
Hi Mario,
I checked and I have these arguments for my run configuration:
-Xms1024m -Xmx2048m
I would expect that 2 GB should be enough for my current setup. Just a bit more info:
I noted, that this also happens when I run fireAllRules(). It bombs out with this exception: http://pastebin.com/J7cP60fh
It prints this message to the console and then hangs until the exception occurs:
Hibernate: update SessionInfo set lastModificationDate=?, rulesByteArray=?, startDate=?, OPTLOCK=? where id=? and OPTLOCK=?
I will attempt to write something reproduceable, but I can post a snippet of what it looks like what I am doing:
persistence.xml: http://pastebin.com/64AVNKG0
My KieServiceFactory: http://pastebin.com/9U7KhBah
This essentially sets up my kie environment so I can quickly create sessions if needed etc. It mainly lives there for guice reasons because dependency injection and PrivateModules needed this (I think the class should not be called a factory but yeah ..)
My Sessionfacade, responsible for creating sessions. It does so by getOrCreate. I store the ID of the session I want in a different table. If a session by my name exist, I load it, if not I create it:
http://pastebin.com/Sx6p6dcY
And finally a transaction helper I use to insert a lot of events/facts or do anything with session. Basically each time I do a insert/delete command on a session or entrypoint, I wrap the call into my TransactionHelper. I do wonder if I need to do the same for fireAllRules, but I believe drools internally handles the transactions for me with safe points:
http://pastebin.com/2HETaWQY
The SessionHolder object is an internal representation. It acts as a delegate that internally stores some stuff like what events have been submitted to what entrypoints, or delete etc or when the session has been created. It's purely for reporting and has no functionality other than delegating to the actual session.
If I am using this incorrectly, I apologise. I couldn't find much more details on how to use the JPA stuff. If I run the same with less objects (for example 20 instead of 6k+ I have no issues loading and storing the session).
I do wonder if I need the JTA stuff at all, but I believe it's mandatory to use JPA with drools. From the stacktraces though it does not appear to be a transaction issue.
> Drools OOM when loading session
> -------------------------------
>
> Key: DROOLS-1014
> URL: https://issues.jboss.org/browse/DROOLS-1014
> Project: Drools
> Issue Type: Bug
> Components: core engine
> Affects Versions: 6.3.0.Final
> Environment: Mac OS 10.10.5, Eclipse Mars Release, Java 1.8, Drools 6.3.0.Final
> Reporter: Artur Kronenberg
> Assignee: Mario Fusco
> Priority: Critical
>
> I ran into an issue loading the session from my JPA.
> I am getting this stacktrace:
> http://pastebin.com/PMKpdBWM
> This is happening for this rule:
> http://pastebin.com/HZmLmsEH
> And this module:
> http://pastebin.com/2Q6k73tC
> What I am doing is:
> 1. Create a new session
> 2. Insert an ApplicationEvent
> 3. fireAllRules
> 4. Reload -> OOM
> The ApplicationEvent has a list of 6345 facts in there. I load them from a CSV file, and use drools to insert them into my knowledge base as facts.
> When I restart my server and have the session reloaded, it ooms when trying to deserialize the session.
> I am still looking for a workaround. I am not sure what is happening and could not find any more info at this point.
> I am using:
> JPA + Hibernate 4.2.21.Final
> org.codehaus.btm:btm:2.1.4 as a standalone JTA platform
> Let me know if there's any other info needed.
> Thanks,
> Artur
--
This message was sent by Atlassian JIRA
(v6.4.11#64026)
10 years, 7 months
[JBoss JIRA] (WFLY-5899) JMS client BOM needs to include Apache Commons BeanUtils
by Jeff Mesnil (JIRA)
Jeff Mesnil created WFLY-5899:
---------------------------------
Summary: JMS client BOM needs to include Apache Commons BeanUtils
Key: WFLY-5899
URL: https://issues.jboss.org/browse/WFLY-5899
Project: WildFly
Issue Type: Bug
Components: Application Client, JMS
Affects Versions: 10.0.0.CR4
Environment: Wildfly 10.0.0.CR4
Reporter: Jeff Mesnil
Assignee: Jeff Mesnil
When using the JMS client BOM, the following exception happens, due to the missing transitive dependency on Apache Commons BeanUtils
{code}
Exception in thread "naming-client-message-receiver-1-thread-1" java.lang.NoClassDefFoundError: org/apache/commons/beanutils/BeanIntrospector
at org.apache.activemq.artemis.uri.ConnectionFactoryParser.<init>(ConnectionFactoryParser.java:26)
at org.apache.activemq.artemis.jms.client.ActiveMQConnectionFactory.<init>(ActiveMQConnectionFactory.java:173)
at org.apache.activemq.artemis.jms.client.ActiveMQConnectionFactory.<init>(ActiveMQConnectionFactory.java:169)
...
{code}
As a workaround, the consumer of the BOM may to add the following dependency:
{code}
<dependency>
<groupId>commons-beanutils</groupId>
<artifactId>commons-beanutils</artifactId>
<version>1.9.2</version>
<scope>test</scope>
</dependency>
{code}
--
This message was sent by Atlassian JIRA
(v6.4.11#64026)
10 years, 7 months
[JBoss JIRA] (WFLY-5473) Session.invalidate() does not invalidate SSO context for non-distributable applications
by Paul Ferraro (JIRA)
[ https://issues.jboss.org/browse/WFLY-5473?page=com.atlassian.jira.plugin.... ]
Paul Ferraro edited comment on WFLY-5473 at 12/22/15 9:34 AM:
--------------------------------------------------------------
[~rjanik] Can you attach a reproducer? We have a test that validates this in our testsuite - so I'm not sure how you are reproducing this issue.
was (Author: pferraro):
[~rjanik] Can you attach a reproducer? We have a test that validate this in our testsuite - so I'm not sure how you are reproducing this issue.
> Session.invalidate() does not invalidate SSO context for non-distributable applications
> ---------------------------------------------------------------------------------------
>
> Key: WFLY-5473
> URL: https://issues.jboss.org/browse/WFLY-5473
> Project: WildFly
> Issue Type: Bug
> Components: Clustering, Web (Undertow)
> Reporter: Richard Janík
> Assignee: Paul Ferraro
> Priority: Blocker
> Fix For: 10.0.0.CR5
>
>
> See "Steps to Reproduce" for detailed description.
> According to my limited knowledge, this was also the core issue in https://bugzilla.redhat.com/show_bug.cgi?id=924456 which has been dispatched as a one-off to a customer. Thus, I'm setting the priority to blocker as this is a regression against 6.4.x. No exceptions have been observed in the server output however.
> Adding Clustering component as I've been trying this with standalone-ha.xml and BZ 924456 relates to clustering.
--
This message was sent by Atlassian JIRA
(v6.4.11#64026)
10 years, 7 months
[JBoss JIRA] (DROOLS-1014) Drools OOM when loading session
by Mario Fusco (JIRA)
[ https://issues.jboss.org/browse/DROOLS-1014?page=com.atlassian.jira.plugi... ]
Mario Fusco commented on DROOLS-1014:
-------------------------------------
How big is your heap? Are you sure you're not getting a OOM not for any specific problem, but only because your heap isn't large enough?
Also could you please send a complete reproducer or at least a snippet of code showing what you're doing?
> Drools OOM when loading session
> -------------------------------
>
> Key: DROOLS-1014
> URL: https://issues.jboss.org/browse/DROOLS-1014
> Project: Drools
> Issue Type: Bug
> Components: core engine
> Affects Versions: 6.3.0.Final
> Environment: Mac OS 10.10.5, Eclipse Mars Release, Java 1.8, Drools 6.3.0.Final
> Reporter: Artur Kronenberg
> Assignee: Mario Fusco
> Priority: Critical
>
> I ran into an issue loading the session from my JPA.
> I am getting this stacktrace:
> http://pastebin.com/PMKpdBWM
> This is happening for this rule:
> http://pastebin.com/HZmLmsEH
> And this module:
> http://pastebin.com/2Q6k73tC
> What I am doing is:
> 1. Create a new session
> 2. Insert an ApplicationEvent
> 3. fireAllRules
> 4. Reload -> OOM
> The ApplicationEvent has a list of 6345 facts in there. I load them from a CSV file, and use drools to insert them into my knowledge base as facts.
> When I restart my server and have the session reloaded, it ooms when trying to deserialize the session.
> I am still looking for a workaround. I am not sure what is happening and could not find any more info at this point.
> I am using:
> JPA + Hibernate 4.2.21.Final
> org.codehaus.btm:btm:2.1.4 as a standalone JTA platform
> Let me know if there's any other info needed.
> Thanks,
> Artur
--
This message was sent by Atlassian JIRA
(v6.4.11#64026)
10 years, 7 months
[JBoss JIRA] (WFLY-5898) JMS client BOM needs to include Apache Commons BeanUtils
by Tomaz Cerar (JIRA)
[ https://issues.jboss.org/browse/WFLY-5898?page=com.atlassian.jira.plugin.... ]
Tomaz Cerar updated WFLY-5898:
------------------------------
Component/s: JMS
> JMS client BOM needs to include Apache Commons BeanUtils
> --------------------------------------------------------
>
> Key: WFLY-5898
> URL: https://issues.jboss.org/browse/WFLY-5898
> Project: WildFly
> Issue Type: Bug
> Components: Application Client, JMS
> Affects Versions: 10.0.0.CR4
> Environment: Wildfly 10.0.0.CR4
> Reporter: Juraci Paixão Kröhling
> Assignee: Stuart Douglas
>
> When using the JMS client BOM, the following exception happens, due to the missing transitive dependency on Apache Commons BeanUtils
> {code}
> Exception in thread "naming-client-message-receiver-1-thread-1" java.lang.NoClassDefFoundError: org/apache/commons/beanutils/BeanIntrospector
> at org.apache.activemq.artemis.uri.ConnectionFactoryParser.<init>(ConnectionFactoryParser.java:26)
> at org.apache.activemq.artemis.jms.client.ActiveMQConnectionFactory.<init>(ActiveMQConnectionFactory.java:173)
> at org.apache.activemq.artemis.jms.client.ActiveMQConnectionFactory.<init>(ActiveMQConnectionFactory.java:169)
> ...
> {code}
> As a workaround, the consumer of the BOM may to add the following dependency:
> {code}
> <dependency>
> <groupId>commons-beanutils</groupId>
> <artifactId>commons-beanutils</artifactId>
> <version>1.9.2</version>
> <scope>test</scope>
> </dependency>
> {code}
--
This message was sent by Atlassian JIRA
(v6.4.11#64026)
10 years, 7 months
[JBoss JIRA] (WFLY-5898) JMS client BOM needs to include Apache Commons BeanUtils
by Tomaz Cerar (JIRA)
[ https://issues.jboss.org/browse/WFLY-5898?page=com.atlassian.jira.plugin.... ]
Tomaz Cerar reassigned WFLY-5898:
---------------------------------
Assignee: Jeff Mesnil (was: Stuart Douglas)
> JMS client BOM needs to include Apache Commons BeanUtils
> --------------------------------------------------------
>
> Key: WFLY-5898
> URL: https://issues.jboss.org/browse/WFLY-5898
> Project: WildFly
> Issue Type: Bug
> Components: Application Client, JMS
> Affects Versions: 10.0.0.CR4
> Environment: Wildfly 10.0.0.CR4
> Reporter: Juraci Paixão Kröhling
> Assignee: Jeff Mesnil
>
> When using the JMS client BOM, the following exception happens, due to the missing transitive dependency on Apache Commons BeanUtils
> {code}
> Exception in thread "naming-client-message-receiver-1-thread-1" java.lang.NoClassDefFoundError: org/apache/commons/beanutils/BeanIntrospector
> at org.apache.activemq.artemis.uri.ConnectionFactoryParser.<init>(ConnectionFactoryParser.java:26)
> at org.apache.activemq.artemis.jms.client.ActiveMQConnectionFactory.<init>(ActiveMQConnectionFactory.java:173)
> at org.apache.activemq.artemis.jms.client.ActiveMQConnectionFactory.<init>(ActiveMQConnectionFactory.java:169)
> ...
> {code}
> As a workaround, the consumer of the BOM may to add the following dependency:
> {code}
> <dependency>
> <groupId>commons-beanutils</groupId>
> <artifactId>commons-beanutils</artifactId>
> <version>1.9.2</version>
> <scope>test</scope>
> </dependency>
> {code}
--
This message was sent by Atlassian JIRA
(v6.4.11#64026)
10 years, 7 months