Menu

#1456 isArray returns true for method parameters of type reference

Function
closed-fixed
5
2009-03-12
2008-12-16
No

On the result of a getClass operation for class CIM_ControllerConfigurationService, the parameter job of method HidePaths returns true for isArray, but parameter job is not an array.

For easier reading, here is the XML representation of parameter JOB in method HidePaths of class CIM_ControllerConfigurationService:

<PARAMETER.REFERENCE NAME="Job" REFERENCECLASS="CIM_ConcreteJob">
<QUALIFIER NAME="IN" TYPE="boolean" OVERRIDABLE="false" TOINSTANCE="true">
<VALUE>
FALSE
</VALUE>
</QUALIFIER>
<QUALIFIER NAME="OUT" TYPE="boolean" OVERRIDABLE="false" TOINSTANCE="true">
<VALUE>
TRUE
</VALUE>
</QUALIFIER>
<QUALIFIER NAME="Description" TYPE="string" TOINSTANCE="true" TRANSLATABLE="true">
<VALUE>
Reference to the job if &apos;Method Parameters Checked - Job Started&apos; is returned (MAY be null if job completed).
</VALUE>
</QUALIFIER>
</PARAMETER.REFERENCE>

Discussion

  • Dave Blaschke

    Dave Blaschke - 2008-12-16
    • assigned_to: nobody --> rgummada
     
  • RAVI GUMMADAVELLI

    hello Robert:

    I looked at the code and was unable to recreate it in my test env.
    Can you please let me know the steps to recreate the defect., is it possible for me to test it in your environment.

    Regards
    -Ravi Gummadavelli

     
  • RAVI GUMMADAVELLI

    Hello Robert:

    As discussed today, I confirmed that the sfcb.1.3.2 does have CIM_Schema 2.17 loaded. the getclass() operation works for other classes but not for "CIM_ControllerConfigurationService" with this cim-om in my test env. Do I need to have any particular provider installed to work with this class.

    Regards
    -Ravi Gummadavelli

     
  • RAVI GUMMADAVELLI

    Hello Robert:

    I am able recreate the defect using Pegasus cim-om.

    For Method "DetachDevice" and "PARAMETER.REFERENCE NAME="Protocol controller" isArray is returning "false" but
    for Method "HidePaths" and "PARAMETER.REFERENCE NAME="Job" isArray is returning "true"

    and I am investigating the problem

    Thanks and Regards
    -Ravi Gummadavelli

     
  • RAVI GUMMADAVELLI

    Hello Robert:

    It looks like the response sets the cim element as PARAMETER.REFERENCE but returns an arraysize of "0" for this CLASS="HidPaths" and
    <PARAMETER.REFERENCE NAME="Job" REFERENCECLASS="CIM_ConcreteJob">
    which indicates it is a unbounded array.
    At this point It is not clear if the server should return a PARAMETER.REFARRAY or the server should not return the array size if it is a PARAMETER.REFERENCE for this element.

    Thanks and Regards
    -Ravi Gummadavelli

     
  • Robert Kieninger

    Hello Ravi,

    thanks for your investigation. But I can't really follow your analysis. I am checking the XML that is returned by the CIM Server for class CIM_ControllerConfigurationService, but the method parameter in question is exactly what I have listed in this bug report. And there is nothing of an arraysize=0 in that XML.
    Where do you think the response from the Server contains the data that leads to arraysize=0?

     
  • RAVI GUMMADAVELLI

    2433593_patch.txt

     
  • RAVI GUMMADAVELLI

    Hello Robert:

    ParameterReferenceNode and ParameterRefArrayNode both were using the same const. PARAMETER_REFERENCE in their constructor, and ParameterReferenceNode was being resolved as ParameterRefArrayNode, and as the ARRAYSIZE attribute was null for this element, this was setting the arraySize=0.
    I have uploaded the patch with the fix. Can you please try this in your environment.

    Thanks and Regards
    -Ravi Gummadavelli

     
  • Robert Kieninger

    Ravi,

    I have tested your patch and it works perfect in my environment, including a couple of other regression tests I have for the JSR-48 Java Client on z/OS.
    Thank you for the quick turnaround.

     
  • RAVI GUMMADAVELLI

    2433593_patch.txt

     
  • RAVI GUMMADAVELLI

    Patch sent for community review. During a 2 week period any exploiter may comment on the patch, request changes or turn it down completely (with good reason). For the time being the patch is part of the "Experimental" branch in CVS.

     
  • RAVI GUMMADAVELLI

    • status: open --> open-fixed
     
  • Dave Blaschke

    Dave Blaschke - 2009-03-11

    The community review is completed and we received no substantial critisism. Therefore the patch has been approved and merged into the "HEAD" branch. The next release will pick it up.

     
  • Dave Blaschke

    Dave Blaschke - 2009-03-11
    • status: open-fixed --> pending-fixed
     
  • Dave Blaschke

    Dave Blaschke - 2009-03-12

    The patch was picked up by release 2.1.0 and will be closed.

     
  • Dave Blaschke

    Dave Blaschke - 2009-03-12
    • status: pending-fixed --> closed-fixed
     

Log in to post a comment.