Uploaded image for project: 'SystemDS'
  1. SystemDS
  2. SYSTEMDS-2343

Invalid function removal for eval input to pwrite/print

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Fixed
    • None
    • SystemML 1.2
    • None
    • None

    Description

      The following script fails with missing function and misleading error message. The root cause is incorrect meta data management in the functional call graph of IPA which did not properly detect eval functions under persistent writes or print/tostring.

      foo1 = function (matrix[double] M) return (matrix[double] ret) {
        ret = M + 1
      }
      
      foo2 = function (matrix[double] M) return (matrix[double] ret) {
        ret = M + 2
      }
      
      
      M = matrix ("1 2 3 4 5 6", rows=3, cols=2)
      
      A = eval("foo1", M)
      B = eval("foo2", A)
      
      print ("A = \n" + toString(A))
      print ("B = \n" + toString(B))
      
      Caused by: org.apache.sysml.runtime.DMLRuntimeException: namespace .defaultNS is undefined
      	at org.apache.sysml.runtime.controlprogram.Program.getFunctionProgramBlock(Program.java:93)
      	at org.apache.sysml.runtime.instructions.cp.FunctionCallCPInstruction.processInstruction(FunctionCallCPInstruction.java:101)
      	at org.apache.sysml.runtime.instructions.cp.EvalNaryCPInstruction.processInstruction(EvalNaryCPInstruction.java:67)
      	at org.apache.sysml.runtime.controlprogram.ProgramBlock.executeSingleInstruction(ProgramBlock.java:252)
      	... 36 more
      

      Attachments

        Activity

          People

            mboehm7 Matthias Boehm
            mboehm7 Matthias Boehm
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: