Memory Usage Grows During Monitoring

Problem: Memory consumption keeps growing for the monitoring database process in the cache database (CDB) node, when enabling the monitoring feature in SAP Control Center. It can cause the server to crash due to an out-of-memory issue.

Explanation: Monitoring is a useful tool, but it does consume system resources. When monitoring the CDB, clusterDB, and DomainLog/monitorDB, memory usage continues to grow, especially if there is heavy processing load or monitoring is done over a long period of time. Use the Task Manager Memory column to view the memory usage.

Solution: Modify the CDB .ini files to limit automatic cache growth. To do so, use the -ch server option to set a maximum cache size. Format:
{ dbeng16 | dbsrv16 } -ch { size[ k | m | g | p ] } ...
For example:
dbsrv16 -ch 1m ...

The .ini files and locations are different depending on whether the CDB is installed as a separate node, or installed as a single node.

For a cluster installation, where CDB is installed on a separate node, these files are installed in SMP_HOME\Servers\SQLAnywhere<version>\binxx:
  • Cache database – cdboptions.ini
  • Cluster database – cldboptions.ini
  • Log database – monitoroptions.ini

When CDB is installed with the server on a single node, the file is sqlanywhereoptions.ini installed in SMP_HOME\Servers\bin.

See -ch database server option in SQL Anywhere Server - Database Administration.