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

KB10350: Why does the Job Monitor show more jobs executing than the limit set by the 'Executing jobs per user' setting in MicroStrategy Intelligence Server?


Community Admin

• Strategy


Why does the Job Monitor show more jobs executing than the limit set by the 'Executing jobs per user' setting in MicroStrategy Intelligence Server?

The main purpose of the 'Executing jobs per user' setting is to limit the number of simultaneously executing jobs per user per project against the warehouse. This feature helps manage concurrent workloads against the warehouse and also prevents any single user from taking up all the threads and monopolizing the system. Refer to the following Strategy Knowledge Base document for more details on this setting:
 
KB16072 - How does the ’Executing jobs per user’ setting work in Strategy Intelligence Server 9.x and newer?
 
Suppose the 'Executing jobs per user' setting is set to a value of 3. It is possible for more than 3 jobs to have an 'executing' status in the Job Monitor, all of which are report jobs (this setting does not apply to element requests) that are submitted from the same project. While it may seem that the setting is being violated, that is not the case. The reason for this is as follows:
 
When a job is submitted to the Strategy Intelligence Server, it is handled by a series of Processing Units (PUs). A Processing Unit is a job-queuing and processing station with a collection of tasks, that a job will undergo after it is submitted to the Strategy Intelligence Server. When the job monitor depicts the status as 'executing,' the executing status can apply to the execution of the job within any Processing Unit (PU).
 
If this number of executing jobs per user setting is set to a finite positive number, then at no instant of time can the number of executing jobs for the user exceed this number in any PU. For instance, if the setting is set to 1 and the user submits 5 reports at the same time, then at any instant in time, there can be no more than one job executing in any of these PUs. That is, at the same instant of time, there can be one job executing in the 'QueryExecution' PU, one job executing in the 'AnalyticalPU', one job executing in the 'SQLEngine' PU and so on. But, there can never be two or more jobs executing in any of these PUs. However, Job Monitor may still show more than one job in 'executing' status because the 'executing' status can apply to a job that is executing in any of the PUs.
 
Out of these PUs, it is the 'QueryExecution' PU that submits the job to the warehouse database. Generally, the time spent by a job in the other PUs is much smaller compared to the time spent within the 'QueryExecution' PU and hence the status of 'executing' as depicted by the Job Monitor usually represents the executing status in the 'QueryExecution' PU. Because of this, in most cases, the number of report jobs from the same project having 'executing' status in the Job Monitor does not exceed the value of 'executing jobs per user' setting, but is not always the case.
 


Comment

0 comments

Details

Knowledge Article

Published:

June 8, 2017

Last Updated:

October 13, 2017