1. Following information about memory lock is from TimesTen documentation:
On Solaris, Linux and Windows 64-bit systems, TimesTen enables applications that connect to a shared database to specify whether the real memory should be locked while the database is being loaded into memory or while the store is in memory. If the physical memory used for the database is locked, the operating system's virtual memory subsystem cannot borrow that memory for other uses. No part of the database is ever paged out but this could lead to memory shortages in a system that is under configured with RAM. While memory locking can improve database load performance, it may impede other applications on the same computer.
On Linux systems, set the groupname in the MemLock setting to be the same as the instance administrator in the /etc/security/limits.conf file. Set the value of MemLock to be at least as large as the TimesTen database shared memory segment.
2. Following is our persize and tempsize for two datastores (a and b) present in the system
3. We have set the TimesTen attribute MemoryLock=4 for our datastores.
4. My "max locked memory" is 64k
5. The system has 24GB of RAM.
------ Shared Memory Segments --------
key shmid owner perms bytes nattch status
0x5d0500ac 0 root 660 1048576 24
0x11040012 32769 root 660 8788663088 29 locked
0x12040012 65538 root 660 268435456 29
0x11040013 98307 root 660 9199704648 14 locked
0x12040013 131076 root 660 268435456 14
As TimesTen suggests "Set the value of MemLock to be at least as large as the TimesTen database shared memory segment". What is its significance?
What we will be lacking if we retain the "max locked memory" value to 64 which is default value for Linux?