Uploaded image for project: 'camunda BPM'
  1. camunda BPM
  2. CAM-14773

feel functions with null input do not evaluate to false consistently

XMLWordPrintable

    • Icon: Bug Report Bug Report
    • Resolution: Won't Fix
    • Icon: L3 - Default L3 - Default
    • None
    • None
    • dmn-engine
    • None

      Environment (Required on creation):

      camunda-bpm-spring-boot-starter 7.17.0

      Description

      Feel functions that have null as a parameter evaluate to true or false depending on what the input expression evaluates to, even if the feel function does not access the input at all.

      In the attached dmn table i used the same feel expressions in multiple input columns. One input evaluates to null, and one to an integer or string. In the screenshot below from the Decision Cockpit you can see that sometimes even(null) or contains(null, Pizza) evaluate to true and sometimes not.

      Steps to reproduce (Required on creation):

      Call the attached dmn table from a process instance which has the process variables

      • someInteger = 1
      • nullInteger = null
      • someString = "Pizza"
      • nullString = null

      Observed Behavior (Required on creation):

      The following expressions evaluate to true if the input expression evaluates to null:

      • even(null)
      • contains(?, "Pizza")
      • contains(null, "Pizza")
      • contains("Pizza", null)
      • list contains(null, 4)

      The same applies to equivalent functions like starts with(), matches(),...

      Expected behavior (Required on creation):

      The following expressions evaluate to false if the input expression evaluates to null:

      • even(null)
      • contains(?, "Pizza")
      • contains(null, "Pizza")
      • contains("Pizza", null)
      • list contains(null, 4)

      The same applies to equivalent functions like starts with(), matches(),...

      Root Cause (Required on prioritization):

      Solution Ideas (Optional):

      Hints (optional):

       

        This is the controller panel for Smart Panels app

          1. feel-functions-null.PNG
            45 kB
            David Zang
          2. feel-functions-null-1.PNG
            45 kB
            David Zang
          3. image-2022-07-19-17-40-01-055.png
            45 kB
            David Zang
          4. test-dmn.dmn
            9 kB
            David Zang

              miklas.boskamp Miklas Boskamp
              DavidZang David Zang
              Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

                Created:
                Updated:
                Resolved: