Hi,
<br />
<br />I noticed something interesting. The issue with memory is happening always while inserting the second set of objects into working memory! 
<br />Earlier, I was insering the DriverVO&#39;s into WM and then inserting the AssignmentsVO, and the system was hanging while inserting the AssignmentsVO. Then I reversed the order of insertion and then the machine was hit while inserting the DriverVO&#39;s.
<br />
<br />Does anyone know why this issue might be happening and how to overcome this?
<br />
<br />Thanks in advance,
<br />Jayadevan.
<br />
<br />On Jun 1, 2009 6:51pm, jayadevan.m@gmail.com wrote:
<br />&gt; Thanks W, 
<br />&gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; I tried it out ,But didn&#39;t get any performance improvement :( 
<br />&gt; 
<br />&gt; 
<br />&gt; The issue might be that I am inserting too many objects into working memory 
<br />&gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; jayadevan 
<br />&gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; On Jun 1, 2009 3:36pm, Wolfgang Laun wolfgang.laun@gmail.com&gt; wrote:
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; The first two patterns pair each driver assignment with each trip -
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; which is quite a lot of work to do. (The infix &quot;and&quot; between the 2nd
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; and 3rd pattern doesn&#39;t change this.) Also, the field restriction
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; &quot;tripId in ($tid)&quot; is not the most efficient way.
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; Try this:
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; rule &quot;Assignment Check&quot;
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; when
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt;   $creVo: DriverAssignVO($drId: driverId,   $tid1: tripId)
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt;   $creVo: DriverAssignVO(driverId == $drId, $tid2: tripId != $tid1)
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt;   $trAsgn1: TripVO( tripId == $tid1, $startDtmUtc: startDtmUtc,
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; $endDtmUtc: endDtmUtc)
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt;   $trAsgn2: TripVO( tripId == $tid2,
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt;                  ((startDtmUtc &gt;= $startDtmUtc && startDtmUtc  
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt;                   (endDtmUtc &gt;= $startDtmUtc && endDtmUtc  
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; then
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt;   System.out.println(&quot;TRIP ID: &quot; + $crvo.getTripId());
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; end
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; Here the first two patterns produce all pairs of assignments of a
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; single driver, and the remainder checks for overlaps.
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; You&#39;ll also find that this produces two symmetric firings for each
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; overlap. It might be possible to avoid this by using  &quot;$tid2: tripId &gt;
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; $tid1&quot; in the second pattern, the id&#39;s data type permitting.
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; -W
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 2009/6/1 Mark Proctor mproctor@redhat.com&gt;:
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; &gt; Please send these emails to the user list (in cc) so everyone can help, not
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; &gt; directly to me.
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; &gt;
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; &gt; Mark
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; &gt; jayadevan m wrote:
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; &gt;
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; &gt; Hi
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; &gt;
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; &gt;  We have one performance(memory) issue in drools-5
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; &gt;
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; &gt;  Our Scenario
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; &gt;
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; &gt;  We have 3 entities
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; &gt;
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; &gt;   Trip - Entity representing details about trip
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; &gt;
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; &gt;  Driver - Entity for driver , it contain details about driver
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; &gt;
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; &gt;  Assignments - details about each assignments (one driver may assigned to
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; &gt; many trip)
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; &gt;
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; &gt;  The rule is to find ,&quot;Find overlapping between trip assignments&quot;
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; &gt;
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; &gt;  For Implementing this we take the Trip ,Driver And Assignments entities
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; &gt; from Data base and put it into working memory
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; &gt;
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; &gt;  For Small number of records this rule work well ,
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; &gt;
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; &gt; But we want to check it against 15000 driver ,331176 assignments and 12745
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; &gt; trips
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; &gt;
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; &gt;  In that case it take huge amount of time for execution (rule firing )
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; &gt;
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; &gt;
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; &gt;
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; &gt; Rule is
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; &gt;
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; &gt;  rule &quot;Assignment Check&quot;
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; &gt;
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; &gt; when
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; &gt;
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; &gt;              $creVo: DriverAssignVO($drId: driverId ,$tid: tripId);
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; &gt;
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; &gt;               $tripAssignment: TripVO(
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; &gt;
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; &gt;                             $tpid: tripId,
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; &gt;
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; &gt;                             $startDtmUtc: startDtmUtc,
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; &gt;
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; &gt;                             $endDtmUtc: endDtmUtc)
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; &gt;
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; &gt;                             and
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; &gt;
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; &gt;                             $trvo: TripVO(
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; &gt;
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; &gt;                             tripId != $tpid,
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; &gt;
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; &gt;                             tripId in ($tid),
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; &gt;
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; &gt;                             ((startDtmUtc &gt;= $startDtmUtc && startDtmUtc  
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; &gt; $endDtmUtc) ||
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; &gt;
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; &gt;                             (endDtmUtc &gt;= $startDtmUtc && endDtmUtc  
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; &gt; $endDtmUtc)));
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; &gt;
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; &gt;               $crvo: DriverAssignVO($drvrId: driverId , driverId == $drId ,
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; &gt; tripId != $tid, tripId == $tpid)
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; &gt;
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; &gt; then
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; &gt;
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; &gt;               System.out.println(&quot;TRIP ID: &quot; + $crvo.getTripId());
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; &gt;
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; &gt; end
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; &gt;
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; &gt;
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; &gt;
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; &gt; thanks and regards
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; &gt;
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; &gt; _______________________________________________
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; &gt; rules-users mailing list
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; &gt; rules-users@lists.jboss.org
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; &gt; https://lists.jboss.org/mailman/listinfo/rules-users
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; &gt;
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; &gt;
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; _______________________________________________
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; rules-users mailing list
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; rules-users@lists.jboss.org
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; https://lists.jboss.org/mailman/listinfo/rules-users
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt; 
<br />&gt; 
<br />&gt; 
<br />&gt; &gt;