<html>
  <head>
    <meta content="text/html; charset=ISO-8859-1"
      http-equiv="Content-Type">
  </head>
  <body bgcolor="#FFFFFF" text="#000000">
    Nested accessors are not currently indexed, because we cannot assure
    their immutability:<br>
    <span id="OLK_SRC_BODY_SECTION"><span style="font-family: 'Courier
        New'; ">$call.device_type<br>
        <br>
        If people changed indexed nested accessors, without correctly
        notifying the engine it would result in integrity problems.<br>
        <br>
        If you have a large number of these, trying flattening the
        model, such as you would do in a database.<br>
        <br>
        Mark<br>
      </span></span>On 19/12/2011 16:23, David Martin wrote:
    <blockquote
      cite="mid:CB14A3D9.D29C%25david.martin@mercedsystems.com"
      type="cite">
      <meta http-equiv="Content-Type" content="text/html;
        charset=ISO-8859-1">
      <div><span class="Apple-style-span" style="font-family: Tahoma;
          font-size: 13px; ">Folks:</span></div>
      <span id="OLK_SRC_BODY_SECTION">
        <div dir="ltr">
          <div ocsi="0" fpstyle="1">
            <div style="direction: ltr;font-family: Tahoma;color:
              #000000;font-size: 10pt;"><br>
              My co-workers and I have been using Drools to great
              success, but we ran smack into a performance brick wall
              recently.<br>
              <br>
              In the example below, both BINNING_INPUT and
              LU_DEVICE_TYPE have large numbers of associated facts in
              working memory (BINNING_INPUT has more than 8 million
              facts in working memory, LU_DEVICE_TYPE about 10k.)
            </div>
          </div>
        </div>
      </span>
      <div><br>
      </div>
      <span id="OLK_SRC_BODY_SECTION">
        <div dir="ltr">
          <div ocsi="0" fpstyle="1">
            <div style="direction: ltr;font-family: Tahoma;color:
              #000000;font-size: 10pt;">LU_DEVICE_TYPE models a lookup
              table.<br>
              <br>
              <span style="font-family: 'Courier New'; ">rule "Binning
                for Attribute: Device_type_desc"</span><br
                style="font-family: Courier New;">
              <span style="font-family: 'Courier New'; ">&nbsp; when</span><br
                style="font-family: Courier New;">
              <span style="font-family: 'Courier New'; ">&nbsp;&nbsp;&nbsp; $call :</span><br
                style="font-family: Courier New;">
              <span style="font-family: 'Courier New'; ">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <span
                  style="font-weight: bold;">
                  BINNING_INPUT</span>()</span><br style="font-family:
                Courier New;">
              <span style="font-family: 'Courier New'; ">&nbsp;&nbsp;&nbsp;
                $device_typeLookup :</span><br style="font-family:
                Courier New;">
              <span style="font-family: 'Courier New'; ">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <span
                  style="font-weight: bold;">
                  LU_DEVICE_TYPE</span>(</span><br style="font-family:
                Courier New;">
              <span style="font-family: 'Courier New'; ">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
                $call.device_type == device_type</span><br
                style="font-family: Courier New;">
              <span style="font-family: 'Courier New'; ">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; )</span><br
                style="font-family: Courier New;">
              <br style="font-family: Courier New;">
              <span style="font-family: 'Courier New'; ">&nbsp; then</span><br
                style="font-family: Courier New;">
              <span style="font-family: 'Courier New'; ">&nbsp;&nbsp;&nbsp;
                $call.setDevice_type_desc($device_typeLookup.getDevice_type_desc());</span><br
                style="font-family: Courier New;">
              <span style="font-family: 'Courier New'; ">end</span><br>
              <br>
              It's a simple enough rule: join on the device_type field.&nbsp;
              Unfortunately, this rule and a few others like it are
              taking FOREVER to insert. &nbsp;Even when I cut the number of
              BINNING_INPUT facts in working memory down from 8M to 10k.<br>
              <br>
              This feels like a basic Drools question.&nbsp; But I can't seem
              to find any help from google.<br>
              <br>
              Please advise!<br>
              <br>
              Thanks in advance,<br>
              <br>
              Dave Martin<br>
              <br>
            </div>
          </div>
        </div>
      </span>
      <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>