Configuring a Range for Shared Memory Keys

You can configure a range for all shared memory keys used by TimesTen with the shmkey_range daemon attribute.

You can constrain shared memory keys to a specific range to prevent shared memory collisions. However, if you use this option, it is your responsibility to ensure that no other shared memory segments use shared memory keys in the specified range.

Note:

This option is only available on UNIX or Linux platforms. This option cannot be used for Windows platforms.

The syntax is as follows:

shmkey_range=low-high

For example:

shmkey_range=0x4000000-0x40FFFFFF

There can be no space in the low-high clause. The range is inclusive; thus, in the preceding example, both 0x40000000 and 0x40FFFFFF are valid keys. In addition, the minimum range size is 16.

With this option, it is possible to run out of shared memory keys, especially if there multiple invalidations or there are more TimesTen databases in use than originally anticipated.

If a user provides any of the following invalid values for the shared memory keys, then the TimesTen daemon terminates the startup process.

  • Invalid numeric strings

  • Only one number is specified for the range

  • The first number is greater than the second number in the range specification

  • The range size is less than 16.

  • The range is specified incorrectly.