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

Mario Fusco (Jira) issues at jboss.org
Tue Jan 14 04:22:31 EST 2020


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

Mario Fusco resolved DROOLS-4925.
---------------------------------
    Resolution: Done


Fixed by https://github.com/kiegroup/drools/commit/0e180cef1870f87ed655215a88b935780153d1d7

> 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.29.0.Final, 7.30.0.Final, 7.31.0.Final
>            Reporter: Matteo Casalino
>            Assignee: Mario Fusco
>            Priority: Major
>         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