The Memory Contract Manager assists in preventing memory depletion shut downs. Thus, it is useful for users to know whether or not the Memory Contract Manager is enabled. The Single Allocation limit, found in Strategy Intelligence Server Configuration -> Governing ->Memory Settings, can help prevent oversized memory blocks from using Strategy Intelligence Server memory resources. Users should check the settings in the Intelligence Server Configuration regularly to evaluate whether the settings reflect the system expectations.
Additionally it is possible to determine the value for the settings directly from the DSSErrors logs without having to open the Intelligence Server configuration. The default setup for the DSSErrors log on the Strategy Intelligence Server 9.x and 10.x machine details start up information. In order to determine the whether or not Memory Contract Manager and Single Allocation are enabled, follow the steps below:
- Search DSSErrors for the text 'Contract Manager Settings'. These settings are written to the logs on server startup. If no result is returned, then search the DSSErrors.log.bak for this phrase. If both logs do not include the phrase, then the Strategy Intelligence Server has not been restarted since the backup log's earliest recorded time. The only other way to trigger this information in the logs is by opening the Intelligence Server configuration and making a change there.
- Note the statement that includes the words "Reserve(Bytes)" and "Reserve(%)". These two settings indicate the amount of memory allocated for processes external to the Intelligence Server (either in bytes or as a percentage)
If both the Reserve(Bytes) and Reserve(%) settings have a value of -1, then MCM is not enabled. Any other combination of values for these settings implies that Memory Contract Management is turned on and the appropriate memory has been allocated for other processes. See the example below:
PrintServerDef: User idle timeout: = 1800, Web user timeout = 60C, scheduler session timeout = 300
PrintServerDef: XML governing: MaxXmlNodes - 500000, MaxXml DrillPaths - 100
PrintServerDef: Contract Manager Settings: Limit(Bytes) = -1, Limit(%) = -1, Reserve(Bytes) = 0, Reserve(%) = -1
PrintServerDef: Contract Manager Settings: IdleTime = 300, Watermark = 5, VBLimit(%) = 90
PrintServerDef: RW Max Memory governing: PDF = 100000000, XML = 100000000, Excel = 100000000
--------------------------- Dump Server Def - end -----------------------------------
- Note the statement that includes the "Limit(Bytes)" and "Limit(%)" settings.
If both the Limit(Bytes) and Limit(%) settings equal -1, then the Single Allocation Limit setting is not enabled. See the example below:
PrintServerDef: XML governing: MaxXmlNodes - 500000, MaxXmlDrillPaths -100
PrintServerDef: Contract Manager Settings: Limit(Bytes) = -1, Limit(%) = -1, Reserve(Bytes) = 0, Reserve(%) = -1
PrintServerDef: Contract Manager Settings: IdleTime = 300, Watermark = 5, VBLimit(%) = 90
PrintServerDef: RW Max Memory governing: PDF = 100000000, XML = 100000000, Excel = 100000000
--------------------------- Dump ServerDef - end -----------------------------------------------
For a detailed discussion of Memory Contract Manager and the associated settings refer to the following Strategy Knowledge Base Document:
KB13315: Overview of the Memory Contract Manager (MCM) behavior in Strategy Intelligence Server Universal 9.4.x-10.x
KB14164