PLSQL_MEMORY_ADDRESS
Use of PL/SQL requires a shared memory segment. This attribute determines the virtual address at which this shared memory segment is loaded into each process that uses the TimesTen direct drivers.
This shared memory contains recently-executed PL/SQL code, shared package state, and metadata associated with the operation of PL/SQL. This shared memory segment is separate from the one containing the TimesTen database.
The memory address at which this shared memory segment is loaded must be identical in each process using TimesTen. You must specify the value as a hexadecimal address.
If you do not specify a value for PLSQL_MEMORY_ADDRESS
, TimesTen uses a platform-dependent default value.
The default values for each platform are designed to:
-
Maximize the amount of virtual space for your TimesTen database and for your applications.
-
Minimize the fragmentation of the virtual address space.
-
Avoid conflicts with other uses of virtual address space.
The platform specific default memory addresses are:
Operating system | Address |
---|---|
Linux x86-64 |
|
AIX |
|
Windows |
|
HP-UX |
|
Some things to consider when setting this attribute are:
-
If applications simultaneously connect to multiple TimesTen databases in direct mode, then each database must use a different value for
PLSQL_MEMORY_ADDRESS
. -
The value of this attribute is stored persistently by TimesTen. The persistent attribute value is specified in situations when the database is loaded automatically by TimesTen. For example, the database is automatically loaded if
RamPolicy
for the database is set to 1. -
If the PL/SQL shared memory cannot be mapped at the appropriate address, TimesTen returns an error and the connection to the database fails.
-
The memory segment size is determined by the value of
PLSQL_MEMORY_SIZE
.
Required Privilege
Only the instance administrator can change the value of this attribute.
Usage in TimesTen Scaleout and TimesTen Classic
This attribute is supported in both TimesTen Classic and TimesTen Scaleout.Setting
Set PLSQL_MEMORY_ADDRESS
as follows:
Where to set the attribute | How the attribute is represented | Setting |
---|---|---|
C or Java programs or UNIX and Linux systems |
|
A hexidecimal value that indicates the memory address for PL/SQL process. |
Windows ODBC Data Source Administrator |
Not applicable |