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

KB31502: What commands does the MicroStrategy Intelligence Server Universal use to check the system shared memory and semaphore settings in UNIX/Linux?


Community Admin

• Strategy


Starting with the Strategy Intelligence Server Universal 9.X, users may choose to use shared memory for inter-process communication (IPC) between the Intelligence Server process and the child processes created for communication with data sources (M8MulPrc / MJMulPrc / M8PrcSvr). The following tech note provides additional information about the new shared memory for IPC feature:

  • KB30320: What are the operating system shared memory settings that a user is prompted for during the installation of MicroStrategy Intelligence Server Universal 9.x  

When shared memory is selected during installation, the Strategy Intelligence Server checks the current settings for kernel parameters related to shared memory and semaphores. If the value detected is lower than the suggested value, a warning message similar to the following is output to the console:


mstr_check_max_semaphore: WARNING: maximum number of semaphore arrays 1024 is low; please increase to 2048 or greater to use high performance share memory IPC.

The Strategy Intelligence Server checks the kernel shared memory and semaphore settings by running some system commands. The following are a list of the commands run on the different Unix/Linux operating systems:
 
Linux
The maximum number of system wide semaphore sets / IDs can be found using:

$ /sbin/sysctl -n kernel.sem | cut -f 4

The maximum number of shared memory identifiers at any given time:

$ /sbin/sysctl -n kernel.shmmni

 
Solaris
The maximum number of shared memory identifiers at any given time:

$ sysdef | grep -i SHMMNI

The maximum number of semaphores in the system:

$ sysdef | grep -i SEMMNS

The maximum number of system wide semaphore sets / IDs:

$ sysdef | grep -i SEMMNI

 
Additionally, the max-sem-ids and the max-shm-ids from prctl are checked at installation:

$ prctl -t privileged $$

 
 
HP-UX
The maximum number of segments per process:

$ kctune -P current shmseg | tr -d current

The maximum number of shared memory identifiers at any given time:

​$ kctune -P current shmmni | tr -d current

 
The maximum number of semaphores in the system:

$ kctune -P current semmns | tr -d current

The maximum number of system wide semaphore sets / IDs:
 

$ kctune -P current semmni | tr -d current

 

AIX
Maximum settings are not checked. The kernel dynamically adjusts the limits, or the setting does not exist.
 
Third Party Software Installation WARNING
The third-party product(s) discussed in this technical note is manufactured by vendors independent of Strategy. Strategy makes no warranty, express, implied or otherwise, regarding this product, including its performance or reliability.


Comment

0 comments

Details

Knowledge Article

Published:

June 5, 2017

Last Updated:

June 5, 2017