<html>
  <head>
    <meta content="text/html; charset=ISO-8859-1"
      http-equiv="Content-Type">
  </head>
  <body bgcolor="#FFFFFF" text="#000000">
    <div class="moz-cite-prefix">No, this is not normal. <br>
      I could not reproduce it in 5.6.0-SNAPSHOT, however, could you try
      that version too, and/or post a full<br>
      reproducer - i.e. the exact code you are running?<br>
      Hopefully it is already fixed<br>
      Thanks<br>
      <br>
      <br>
      On 10/03/2013 11:11 PM, Yu Changyuan wrote:<br>
    </div>
    <blockquote
cite="mid:CAF0fuZARCaXtHUwpZo4DRPvCTsjfnGcGzNgWf4136sD+0UTqfQ@mail.gmail.com"
      type="cite">
      <div dir="ltr">Hi, everyone,<br>
        <br>
        &nbsp; I just find that, insert an event into a entry point or insert
        it directly into session will cause different behaviour, is this
        expected?<br>
        <br>
        &nbsp; Here is the details:<br>
        <br>
        1. drools run in stream mode and use pseudo clock<br>
        2. insert a MyEvent into entry-point "stream" and a MyEvent into
        session directly every 1 seconds, start at 500ms.<br>
        3. call fireAllRules every 1seconds, at second 1, second 2, etc<br>
        4. drools version 5.5.0.Final<br>
        <br>
        Below is the rule:<br>
        <br>
        package me.ycy.drools.test1.data<br>
        <br>
        import java.util.List<br>
        <br>
        declare MyEvent<br>
        &nbsp;&nbsp;&nbsp; @role(event)<br>
        &nbsp;&nbsp;&nbsp; @timestamp(timestamp)<br>
        end<br>
        <br>
        rule "over 0.3s"<br>
        &nbsp;&nbsp;&nbsp; when<br>
        &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $list: List() from collect(MyEvent() over
        window:time(300ms))<br>
        &nbsp;&nbsp;&nbsp; then<br>
        &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; System.out.println("Rule: with in 0.3s --&gt; " +
        $list);<br>
        end<br>
        <br>
        rule "over 1s"<br>
        &nbsp;&nbsp;&nbsp; when<br>
        &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $list: List() from collect(MyEvent() over
        window:time(1s))<br>
        &nbsp;&nbsp;&nbsp; then<br>
        &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; System.out.println("Rule: with in 1s --&gt; " + $list);<br>
        end<br>
        <br>
        rule "over 3s"<br>
        &nbsp;&nbsp;&nbsp; when<br>
        &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $list: List() from collect(MyEvent() over
        window:time(3s))<br>
        &nbsp;&nbsp;&nbsp; then<br>
        &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; System.out.println("Rule: with in 3s --&gt; " + $list);<br>
        end<br>
        <br>
        rule "over 0.3s ep"<br>
        &nbsp;&nbsp;&nbsp; when<br>
        &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $list: List() from collect(MyEvent() over
        window:time(300ms) from entry-point "stream")<br>
        &nbsp;&nbsp;&nbsp; then<br>
        &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; System.out.println("Rule: with in 0.3s use ep --&gt; " +
        $list);<br>
        end<br>
        <br>
        rule "over 1s ep"<br>
        &nbsp;&nbsp;&nbsp; when<br>
        &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $list: List() from collect(MyEvent() over
        window:time(1s) from entry-point "stream")<br>
        &nbsp;&nbsp;&nbsp; then<br>
        &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; System.out.println("Rule: with in 1s use ep --&gt; " +
        $list);<br>
        end<br>
        <br>
        rule "over 3s ep"<br>
        &nbsp;&nbsp;&nbsp; when<br>
        &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $list: List() from collect(MyEvent() over
        window:time(3s) from entry-point "stream")<br>
        &nbsp;&nbsp;&nbsp; then<br>
        &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; System.out.println("Rule: with in 3s use ep --&gt; " +
        $list);<br>
        end<br>
        <br>
        // ------- end of rule <br>
        <br>
        Finally, the output(just run 5 seconds)<br>
        <br>
        -------------- fire at 1000 ---------------<br>
        Rule: with in 3s use ep --&gt; [MyEvent(event 0,500)]<br>
        Rule: with in 1s use ep --&gt; [MyEvent(event 0,500)]<br>
        Rule: with in 0.3s use ep --&gt; [MyEvent(event 0,500)]<br>
        Rule: with in 3s --&gt; [MyEvent(event 0,500)]<br>
        Rule: with in 1s --&gt; [MyEvent(event 0,500)]<br>
        Rule: with in 0.3s --&gt; []<br>
        -------------- fire at 2000 ---------------<br>
        Rule: with in 3s use ep --&gt; [MyEvent(event 0,500),
        MyEvent(event 1,1500)]<br>
        Rule: with in 1s use ep --&gt; [MyEvent(event 0,500),
        MyEvent(event 1,1500)]<br>
        Rule: with in 0.3s use ep --&gt; [MyEvent(event 0,500),
        MyEvent(event 1,1500)]<br>
        Rule: with in 3s --&gt; [MyEvent(event 0,500), MyEvent(event
        1,1500)]<br>
        Rule: with in 1s --&gt; [MyEvent(event 1,1500)]<br>
        Rule: with in 0.3s --&gt; []<br>
        -------------- fire at 3000 ---------------<br>
        Rule: with in 3s use ep --&gt; [MyEvent(event 0,500),
        MyEvent(event 1,1500), MyEvent(event 2,2500)]<br>
        Rule: with in 1s use ep --&gt; [MyEvent(event 0,500),
        MyEvent(event 1,1500), MyEvent(event 2,2500)]<br>
        Rule: with in 0.3s use ep --&gt; [MyEvent(event 0,500),
        MyEvent(event 1,1500), MyEvent(event 2,2500)]<br>
        Rule: with in 3s --&gt; [MyEvent(event 0,500), MyEvent(event
        1,1500), MyEvent(event 2,2500)]<br>
        Rule: with in 1s --&gt; [MyEvent(event 2,2500)]<br>
        Rule: with in 0.3s --&gt; []<br>
        -------------- fire at 4000 ---------------<br>
        Rule: with in 3s use ep --&gt; [MyEvent(event 1,1500),
        MyEvent(event 2,2500), MyEvent(event 3,3500)]<br>
        Rule: with in 1s use ep --&gt; [MyEvent(event 1,1500),
        MyEvent(event 2,2500), MyEvent(event 3,3500)]<br>
        Rule: with in 0.3s use ep --&gt; [MyEvent(event 1,1500),
        MyEvent(event 2,2500), MyEvent(event 3,3500)]<br>
        Rule: with in 3s --&gt; [MyEvent(event 1,1500), MyEvent(event
        2,2500), MyEvent(event 3,3500)]<br>
        Rule: with in 1s --&gt; [MyEvent(event 3,3500)]<br>
        Rule: with in 0.3s --&gt; []<br>
        -------------- fire at 5000 ---------------<br>
        Rule: with in 3s use ep --&gt; [MyEvent(event 2,2500),
        MyEvent(event 3,3500), MyEvent(event 4,4500)]<br>
        Rule: with in 1s use ep --&gt; [MyEvent(event 2,2500),
        MyEvent(event 3,3500), MyEvent(event 4,4500)]<br>
        Rule: with in 0.3s use ep --&gt; [MyEvent(event 2,2500),
        MyEvent(event 3,3500), MyEvent(event 4,4500)]<br>
        Rule: with in 3s --&gt; [MyEvent(event 2,2500), MyEvent(event
        3,3500), MyEvent(event 4,4500)]<br>
        Rule: with in 1s --&gt; [MyEvent(event 4,4500)]<br>
        Rule: with in 0.3s --&gt; []<br>
        <br>
        <br>
        <br>
        -- <br>
        Best regards,<br>
        Changyuan
      </div>
      <br>
      <fieldset class="mimeAttachmentHeader"></fieldset>
      <br>
      <pre wrap="">_______________________________________________
rules-users mailing list
<a class="moz-txt-link-abbreviated" href="mailto:rules-users@lists.jboss.org">rules-users@lists.jboss.org</a>
<a class="moz-txt-link-freetext" href="https://lists.jboss.org/mailman/listinfo/rules-users">https://lists.jboss.org/mailman/listinfo/rules-users</a></pre>
    </blockquote>
    <br>
  </body>
</html>