Purpose (problem description)
  • This page provides the steps to deal with the problem of dashboard showing multiple source code paths for a single violating object. This issue is visible on the Investigation - Quality Model Drilldown, when the violation details are checked.
  • When this issue is experienced, the user is able to see multiple source paths for a single violating object on the dashboard. Because of this, user is not able to validate which path contains the source code file.
  • Below is a screenshot showing the above mentioned problem:

Observed in CAST AIP
Release
Yes/No
8.3.x(tick)
Observed on RDBMS
RDBMS
Yes/No
CSS(tick)

Step by Step scenario

  1. Run analysis+snapshot for an application.
  2. After snapshot is completed, open the dashboard and login.
  3. Go to Investigation - Quality Model Drilldown and check for violating object for a Quality Rule displaying multiple object paths.

Action Plan

To troubleshoot this issue, you need the following Relevant input

Perform the below actions:

  1. Check if the violating object has multiple object paths in the Knowledge base
  2. Refer to the Special Cases

If the issue that you are facing is not handled or referenced in this page, please contact CAST Technical Support with the Relevant input.

Relevant input

  1. CAST Support Tool (CST) - alias Sherlock export with the following options CAST Bases Checker, Export Logs, Export Configuration files, Export Computer Environment, Export CAST Bases with Management Base, Knowledge Base, Central base, Measurement Base  Export source code
  2. Complete screenshot of the dashboard with URL and footer showing your problem showing the multiple object paths for a particular object.

Check if the violating object has multiple object paths in the Knowledge base

  • If there are multiple object paths displayed on the dashboard for a single violating object, then follow the below steps. The objective to perform the below steps is to check whether the knowledge base also contains multiple object paths for the same object. If it contains multiple object paths, then it means that the issue is caused because of database inconsistency/corruption in the data.
  • Open the dashboard and navigate to the Investigation - Quality Model Drilldown.
  • Check for the object which is under violation and shows multiple (more than 1) object paths. Copy the name of the object from the "violating object" details section.
  • The name of the object will be like this (for example): "PG03IA".
  • Run the below query on the Knowledge base to get the object ID of the object: 

    select *
    from dss_objects
    where object_name like '%<name of the object from dashboard>%' -- PG03IA in this scenario (for example).

     The above query will provide the following results: 

    Query Result

    420596;545;"PG03IA";"";"[S:\SOURCES\CAST-SOURCES.txt].PG03IA";2109428782

     

  • 420596 is the OBJECT_ID of this object.
  • Now run the below query on the Knowledge base.

    select dsp.PANEL, dcs.SOURCE_PATH, dcs.SOURCE_ERROR, dsp.LINE_START, dsp.LINE_END, dsp.COL_START, dsp.COL_END, o.FullName,
    k.ObjTyp
    from DSS_SOURCE_POSITIONS dsp
    join DSS_CODE_SOURCES dcs on dcs.SOURCE_ID = dsp.SOURCE_ID
    join Keys k
    on k.IdKey=dsp.OBJECT_ID join ObjFulNam o on o.IdObj =k.IdKey
    where dsp.OBJECT_ID =<OBJECT_ID> order by dsp.PANEL -- replace OBJECT_ID with 420596 in this scenario.

    The above query will provide the following result:

    Query Result

    2;"S:\SOURCES\CAST-SOURCES.txt\PG03IA";"0";5;25;7;73;"[S:\SOURCES\CAST-SOURCES.txt].PG03IA";545
    2;"S:\SOURCES\CAST-SOURCES.txt\PG03IA";"0";5;21;7;73;"[S:\SOURCES\CAST-SOURCES.txt].PG03IA";545
    2;"S:\SOURCES\CAST-SOURCES.txt\PG03IA";"0";5;7;7;73;"[S:\SOURCES\CAST-SOURCES.txt].PG03IA";545
    2;"S:\SOURCES\CAST-SOURCES.txt\PG03IA";"0";1;105;7;73;"[S:\SOURCES\CAST-SOURCES.txt].PG03IA";545

  • The result of the query above proves that there are multiple object paths present in the knowledge base for a single violating object.

  • Now, validate if the object paths stored in the KB are physically present and valid or not. To do this, manually open every path physically on the analysis machine and see if the source file is present on the path or not.
  • If they are not present on the paths, then there is some inconsistency in the results stored inside the KB.

When this happens, please contact CAST Technical Support providing the relevant inputs and also the results that were gathered while following the above troubleshooting steps.

Special Cases

#1. In case of COBOL Application

When an analysis+snapshot is performed on a COBOL/Mainframe application and results are observed on the dashboard, it is expected to get multiple object paths for a single object violation.

Reason - COBOL/Mainframe source code files also use copybooks (.cpy files) and the analyzer analyzes all the .COB and .CPY files. A COBOL program can be implemented in several source files: one for the program itself and various others for the copybooks it references (for instance, for data description). So, if there is a violation flagged for a COBOL object then the copybooks that are associated with this object's source file also come up in the object path on the dashboard.

If the above queries are ran on the KB, they will return the results with multiple source paths including the copybook file path as well.

So this is an expected behaviour of the product for COBOL/Mainframe application.

Notes/comments

Zendesk Ticket #4800, #4808

Related Pages