[jboss-jira] [JBoss JIRA] (DROOLS-997) Events that have already expired when inserted may trigger rules before expiring

Chris Pitman (JIRA) issues at jboss.org
Thu Dec 3 12:47:00 EST 2015


Chris Pitman created DROOLS-997:
-----------------------------------

             Summary: Events that have already expired when inserted may trigger rules before expiring
                 Key: DROOLS-997
                 URL: https://issues.jboss.org/browse/DROOLS-997
             Project: Drools
          Issue Type: Bug
          Components: core engine
    Affects Versions: 6.1.0.Final
         Environment: BRMS CEP 6.1.3 GA
            Reporter: Chris Pitman
            Assignee: Mario Fusco


Events that have already expired when they are inserted have their expiration times changed to the insertion time, which will not expire until the clock ticks at least once.

Isee the following in `drools-core/src/main/java/org/drools/core/phreak/PropagationEntry.java`:

{code:java}
long effectiveEnd = eventFactHandle.getEndTimestamp() + expirationOffset;
long nextTimestamp = Math.max( insertionTime,
                                    effectiveEnd >= 0 ? effectiveEnd : Long.MAX_VALUE );

 if (nextTimestamp < workingMemory.getTimerService().getCurrentTime())
{code}

So if current time is still insertion time, the event is not expired.



--
This message was sent by Atlassian JIRA
(v6.4.11#64026)


More information about the jboss-jira mailing list