EducationSoftwareStrategy.com
StrategyCommunity

Knowledge Base

Product

Community

Knowledge Base

TopicsBrowse ArticlesDeveloper Zone

Product

Download SoftwareProduct DocumentationSecurity Hub

Education

Tutorial VideosSolution GalleryEducation courses

Community

GuidelinesGrandmastersEvents
x_social-icon_white.svglinkedin_social-icon_white.svg
Strategy logoCommunity

© Strategy Inc. All Rights Reserved.

LegalTerms of UsePrivacy Policy
  1. Home
  2. Topics

KB442302: How to track what the Intelligence Server is doing just before the Intelligence Server crashes?


Community Admin

• Strategy


The aim of this article is to answer to the following question: Is it possible to track what was the Intelligence Server doing before the cash and how to check that?

In order to track what was the Intelligence Server doing before the crash we can use two methods:
 

  • By thread ID

Threads are who is doing the task. Every PU has one or more threads and every thread can execute any task. However, a thread can execute only one task at a time. Therefore, if you have a thread executing a SQL query, once the query is completed, the thread can be re-assigned to run a document execution for example.
 
In order to find out the thread ID we would need the Dss log. Open the DSSError log files (including the back up files) and search "***** Start of Info Dump *****" to find the first MCM denial in the log files, and then check what's cause the MCM denial.  The only way we can find out what caused that execution is to initially review the thread ID before the Dump. As each thread can only do one task at a time. Therefore, searching for all instances of the thread ID, should give us at least an overview what that thread was used for.
 
We may find that the thread was being used for other tasks. This means that the next step would be to look for "Contract Request Succeeded" (or "Contract Request Failed" messages, it depends on what we want to find), and look for the "Handle" ID. The handle ID is the unique identifier for each memory contract request which are part of the same job execution. This will give you an overview of the memory usage of at least one specific job. Be aware that this is a very time-consuming method and we need to be sure what you are trying to look for.
 

ka04W00000148zKQAQ_0EM44000000RK68.png
  • Using Enterprise Manager

If we want to find out which object / user is responsible for the memory request above, we will need to use historical stats and query the IS_REPORT_STATS and / or IS_DOCUMENT_STATS tables for the time frame referenced in the logs (searching for the handle ID will give us a time range. We can also use EM, if we want to build a report instead or running SQL. In the 10.11 and 11.x releases, we can get the user ID, Session ID and Object ID that is causing an individual request in the DSSErrors.log.
  KB442302


Comment

0 comments

Details

Knowledge Article

Published:

November 23, 2018

Last Updated:

November 23, 2018