[jboss-jira] [JBoss JIRA] (DROOLS-4925) forall pattern with date constraint fail to match

Matteo Casalino (Jira) issues at jboss.org
Fri Jan 10 08:37:15 EST 2020


Matteo Casalino created DROOLS-4925:
---------------------------------------

             Summary: forall pattern with date constraint fail to match
                 Key: DROOLS-4925
                 URL: https://issues.redhat.com/browse/DROOLS-4925
             Project: Drools
          Issue Type: Bug
          Components: core engine
    Affects Versions: 7.31.0.Final, 7.30.0.Final, 7.29.0.Final
            Reporter: Matteo Casalino
            Assignee: Mario Fusco
         Attachments: forall-date-constraint.tgz, network.png

As of Drools 7.29.0.Final, {{forall}} patterns containing equality constraints on dates won't match as expected.

For instance, given the following drl

{noformat}
    declare Fact
      d : java.util.Date
    end
    
    rule "forall with date"
    when
      forall(Fact(d == "01-Jan-2020"))
    then
    end
{noformat}

and the following working memory:

{noformat}
    Fact( d=Wed Jan 01 00:00:00 CET 2020 )
    Fact( d=Wed Jan 01 00:00:00 CET 2020 )
    Fact( d=Wed Jan 01 00:00:00 CET 2020 )
{noformat}

Drools <= 7.28.0.Final will fire 1 rule, whereas Drools >= 7.29.0.Final will fire 0 rules.

This is probably due to the fact that the rewriting implemented in [DROOLS-4632] fails to negate the constraint on the date, as visible in the attached picture of the network.

I am wondering whether there would be an equivalent problem with any constraint on dates (e.g.,  >=, <=, ...)?




--
This message was sent by Atlassian Jira
(v7.13.8#713008)


More information about the jboss-jira mailing list