HOWTO : Use TimesTen MemoryLock Attribute in Linux (Doc ID 731024.1)

Last updated on SEPTEMBER 22, 2016

Applies to:

Oracle TimesTen In-Memory Database - Version 7.0.0.0.0 and later
Linux x86-64
Linux x86



Goal

On some UNIX platforms (including Linux), TimesTen allows the physical memory to be locked while the data store is being loaded into memory or while the store is in memory. This locking prevents any part of the data store from being paged, hence improving performance.

To request the locking of physical memory, the first connection attribute "MemoryLock" should be used. For more information about different values that can be supplied for this attribute, please refer to TimesTen documentation "Oracle TimesTen In-Memory Database API Reference Guide", chapter "Data Store Attributes", topic "MemoryLock".

This document explains Linux operating system level configuration of the MemoryLock option.

The TimesTen API Reference Guide of 7.0 mentions this too:

On Linux and Tru64 systems, root privileges are required to use this attribute. On Solaris systems, you must be installed as root to use MemoryLock=1 or 2.Data
stores in a non-root instance of TimesTen can use settings 3 and 4 for this attribute, on Solaris systems.

However it is no longer a OS restriction on Linux that root privileges are required.  Since Linux kernel 2.6.10, an unprivileged process can use MemoryLock if its effective UID matches the owner or creator UID of the memory segment.   

Solution

Sign In with your My Oracle Support account

Don't have a My Oracle Support account? Click to get started

My Oracle Support provides customers with access to over a
Million Knowledge Articles and hundreds of Community platforms