Uploaded image for project: 'Drools'
  1. Drools
  2. DROOLS-900

java.lang.IncompatibleClassChangeError error while using HashSets

    XMLWordPrintable

Details

    • Bug
    • Resolution: Done
    • Minor
    • 6.3.0.Final
    • 5.6.0.Final
    • core engine
    • None
    • Hide

      1. compiled-drl.txt is the compiled drl where we would use a template for the rule "Promotion Attach Rule" which we usually have around 5000 rules. I have attached a small subset.
      2. req.txt is the request that we fire up. We usually have 200 rules under the json object "ruleRequests" and each of them would have 50 "categoryRates" under the sailing. I have attached a small subset.
      3. Evaluating these against the rule would end up with the IncompatibleClassChangeError at around 20-21st "ruleRequest" evaluation.

      Show
      1. compiled-drl.txt is the compiled drl where we would use a template for the rule "Promotion Attach Rule" which we usually have around 5000 rules. I have attached a small subset. 2. req.txt is the request that we fire up. We usually have 200 rules under the json object "ruleRequests" and each of them would have 50 "categoryRates" under the sailing. I have attached a small subset. 3. Evaluating these against the rule would end up with the IncompatibleClassChangeError at around 20-21st "ruleRequest" evaluation.
    • Workaround Exists
    • Hide

      If I change it to Sets.newHashSet(e1,e2,..).contains(input) it fixes everything.

      Show
      If I change it to Sets.newHashSet(e1,e2,..).contains(input) it fixes everything.
    • NEW
    • NEW

    Description

      In the compiled drl file we were using (Sets.newHashSet(e1,e2,..)).contains(input) then we get an exception java.lang.IncompatibleClassChangeError: Class XYZ does not implement the requested interface java.util.Collection on large input sets.Here XYZ is our input ruleRequest to be evaluated. If I change it to Sets.newHashSet(e1,e2,..).contains(input) it fixes everything.

      Attachments

        1. compiled-drl.txt
          11 kB
        2. req.txt
          3 kB

        Activity

          People

            mfusco@redhat.com Mario Fusco
            pravasis Pravasis Pattnaik (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: