The class ss_m is the core of the SSM interface. Creating an instance of ss_m starts the SSM. Destroying the ss_m instance causes the SSM to shutdown. Details on initialization and shutdown are available in init(ssm).
When the SSM is started, it processes configuration options described below an initialized all the SSM data structures. This initialization includes allocation of the buffer pool. The buffer pool is located in shared memory, so the operating system must have shared-memory support to accommodate the size of the buffer pool. Next, the SSM checks the log to see if recovery is needed. If so, it follows the steps discussed in the recovery section below.
The SSM has a number of configuration options that must be set before it is started with the ss_m constructor. These options include such things as buffer pool sizes and location of the log. Many have default values. Those without default values must be set or the SSM will fail. Below we list all options and their default values.
This is the size of buffer pool in K-bytes. The minimum value is 64. Increasing the size will usually lower the amount of I/O done by the SSM.
The SSM currently uses OS files for log storage. This option sets the path name of the directory where log files will be placed.
This options controls whether or not logging is performed at all. Turning it off, by setting it to no, is used primarily for evaluating logging performance. No recovery or transaction rollback can be performed if logging is off.
This is the path name of the program forked by the SSM to perform asynchronous I/O. Usually this will point to bin/diskrw where Shore is installed.
This is the number of buckets in the hash table used by the lock manager.
This option controls whether or not there is a background thread started to flushing the buffer pool periodically.
This is the location to send error logging messages. The default is the standard error file. Other options are syslogd (to syslog daemon), or to a specific filename.
This is the level of error logging detail. Possible values (from least amount of logging to most amount) are none emerg fatal alert internal error warning info debug.
In addition, a VAS, will often have options of its own that need to be set. The SSM provides an options facility, options(common) for this purpose. Included with the option facility are functions to set options from the program command line and from files containing configuration information.
A discussion of how to use the options facility is given in the tutorial.