Perform the following actions:

  1. Pre-analysis Source Code examination
    1.  Analyzing any very large files can lead to out of memory situations
    2. Large jar file can cause memory issue, so remove those large jar files from analysis.
    3.  Very large files can correspond to a large amount of links and objects which can exceed memory. 
    4.  Generated files which may not be in a format suitable for analysis are often very large in size. 
    5.  You can start with removing them and then add key ones if you need to try to get some of them into the analysis.
    1. Check and remove any files greater than 1 MB from the analysis:
  2. After an analysis crash, you can check the following:

    1. Perform the pre-analysis remediation on the source code if you have not done them yet.

      1. Check the analyzer log to find out the last file that was analyzed and remove it from the analysis to see if it may now succeed without it. Also, in the analysis log, if you see more than around 300 XML files extracted from jar, which may cause performance issue and finally crash then you need to remove this jar file from the deploy folder and then run the analysis
      2. In the analysis log if you see the phrase "Resolving parametrization links" and if the analyzer has not moved further for some hours, then the issue is due to inference engine. Do a test by deactivating Inference Engine and see if the analysis gets completed. If so, we need to tweak the inference engine parameters as the issue here Inference Engine is taking lot of available memory to resolve the parameterization links and on decreasing the parameter the memory taken by Inference Engine would be less. How to change the parameter and impact of changing the parameters are mentioned in this page : CMS Technologies - Information - Modify Inference Engine parameter
      3. You can also identify problem files by dichotomy. This can potentially be time consuming depending on the size of your source code.
        1. Split the analyzed files into smaller groups and analyze those groups
        2. Proper splitting techniques can be found in the CAST documentation.  For the 7.3. release, this can be found in the 'J2EE - Application Qualification Specifics' section which is in the 'Application Qualification and Version Delivery' section.
        3. Continue to split the failing job into smaller groups until you can identify a problem file.
        4. Provide the problem file to CAST for analysis