[jboss-jira] [JBoss JIRA] (DROOLS-72) Potential memory leak in StatelessKnowledgeSessionImpl#execute when fireAllRules throwing RuntimeException

Trung Nguyen (JIRA) jira-events at lists.jboss.org
Thu Mar 7 20:34:42 EST 2013


     [ https://issues.jboss.org/browse/DROOLS-72?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Trung Nguyen updated DROOLS-72:
-------------------------------

    Description: 
when {{ksession.fireAllRules()}} throws RuntimeException, it cause {{ksession}} never gets released. 
{code:lang=java} 
public void execute(Object object) {
        StatefulKnowledgeSession ksession = newWorkingMemory();

        ksession.insert( object );
        ksession.fireAllRules( );
        ksession.dispose();
    }

    public void execute(Iterable objects) {
        StatefulKnowledgeSession ksession = newWorkingMemory();

        for ( Object object : objects ) {
            ksession.insert( object );
        }
        ksession.fireAllRules( );
        ksession.dispose();
    }
{code}

  was:when {{ksession.fireAllRules()}} throws RuntimeException, it cause {{ksession}} never gest released. {code:lang=java} public void execute(Object object) { StatefulKnowledgeSession ksession = newWorkingMemory(); ksession.insert( object ); ksession.fireAllRules( ); ksession.dispose(); } public void execute(Iterable objects) { StatefulKnowledgeSession ksession = newWorkingMemory(); for ( Object object : objects ) { ksession.insert( object ); } ksession.fireAllRules( ); ksession.dispose(); } {code}


    
> Potential memory leak in StatelessKnowledgeSessionImpl#execute when fireAllRules throwing RuntimeException
> ----------------------------------------------------------------------------------------------------------
>
>                 Key: DROOLS-72
>                 URL: https://issues.jboss.org/browse/DROOLS-72
>             Project: Drools
>          Issue Type: Feature Request
>      Security Level: Public(Everyone can see) 
>    Affects Versions: 5.5
>            Reporter: Trung Nguyen
>            Assignee: Mark Proctor
>
> when {{ksession.fireAllRules()}} throws RuntimeException, it cause {{ksession}} never gets released. 
> {code:lang=java} 
> public void execute(Object object) {
>         StatefulKnowledgeSession ksession = newWorkingMemory();
>         ksession.insert( object );
>         ksession.fireAllRules( );
>         ksession.dispose();
>     }
>     public void execute(Iterable objects) {
>         StatefulKnowledgeSession ksession = newWorkingMemory();
>         for ( Object object : objects ) {
>             ksession.insert( object );
>         }
>         ksession.fireAllRules( );
>         ksession.dispose();
>     }
> {code}

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


More information about the jboss-jira mailing list