The ODBC standard defines four connection attributes:
DSN
Driver
UID
PWD
For a description of the ODBC definition of these attributes, see the appropriate ODBC manual for your platform:
Microsoft ODBC 3.0 Programmer's Reference and SDK Guide
Microsoft ODBC 2.0 Programmer's Reference and SDK Guide
This chapter describes all the connection attributes defined by TimesTen. To view the names and values of most attributes specified in the connection string, an application can use the ttConfiguration
built-in procedure.
Note:
According to the ODBC standard, when an attribute occurs multiple times in a connection string, the first value specified is used, not the last value.On UNIX, False
means the attribute value is set to 0
and True
means the attribute value is set to 1
.
On Windows, False
means the check box is unchecked and True
means the check box is checked.
The following sections provide details on all TimesTen attributes, which are first listed in tables in "List of Attributes". Following the tables, this chapter describes each attribute in detail.
Only the instance administrator can change a first connection attribute to a value other than the one currently in effect. (No privileges are required to change AutoCreate
and ForceConnect
.)
This section includes the tables:
Table 1-1 Data store attributes
Name | Description | Default |
---|---|---|
A name that identifies the specific attributes of a connection to the database. |
None |
|
Identifies the physical database. |
None |
|
Identifies the character set used by the database. This attribute is required at database creation time. |
None |
|
A statement that identifies the use of the data source name. |
None |
|
Specifies the TimesTen ODBC Driver Manager. |
None |
|
The directory where transaction log files are stored. |
Database directory |
|
Specifies that disk space for the database should be preallocated when creating the database. |
|
|
Determines whether user-created range indexes are T-tree indexes or B-tree indexes. |
|
|
Enables automatic or user-defined track-based parallel replication. |
|
|
Specifies the number of tracks available for user-defined parallel replication. |
|
|
Specifies that the database is not saved to disk. |
|
|
The type mode for the database. |
|
Table 1-2 First connection attributes
Name | Description | Default |
---|---|---|
Specifies that the first connection creates the database if it does not exist. |
|
|
Controls the frequency in seconds that TimesTen performs a background checkpoint. |
|
|
Controls the amount of data in megabytes that collects in the log between background checkpoints. |
|
|
Controls the maximum rate at which data should be written to disk during a checkpoint operation. |
|
|
Controls the number of threads used to read a checkpoint file when loading the database into memory. |
|
|
Indicates the upper bound on the number of user-specified concurrent connections to the database. |
The lesser of |
|
Specifies whether a connection is allowed to a failed database if it is not properly restored from the corresponding subscriber database. |
|
|
Determines whether the first connection to a database should proceed if TimesTen recovery encounters a defective log record. |
|
|
The size of the internal log buffer in MB. |
|
|
The number of log buffer strands. |
|
|
The transaction log file size in MB. |
|
|
Controls the method used by TimesTen to write and sync log data to transaction log files. |
|
|
Specifies that unneeded transaction log files are deleted during a checkpoint operation. |
|
|
enables applications that connect to a shared database to specify whether the real memory should be locked during database loading. |
|
|
Specifies that the existing database should be overwritten with a new one when a connection is attempted. |
|
|
The size in MB for the permanent partition of the database. |
|
|
Controls the number of threads used to apply changes on the active master database to the standby master database in an active standby pair replication scheme. |
|
|
The number of threads used to rebuild indexes during recovery. |
|
|
The size in MB for the temporary partition of the database. |
The default size as determined from the |
Table 1-3 General connection attributes
Name | Description | Default |
---|---|---|
Specifies the maximum size of the commit buffer in the transaction control block. |
16 KB |
|
Specifies whether there is a symbolic name for the data source. |
The process name |
|
Controls transactional commit behavior in relation to DDL. |
|
|
Determines whether a table or sequence is included in an active standby pair replication scheme when it is created, which can only occur if the |
|
|
Enables replication of data definition language (DDL) statements in an active standby replication scheme. |
|
|
Specifies whether diagnostic messages are generated. |
|
|
Determines whether applications use TimesTen or Oracle parameter binding for duplicate occurrences of a parameter in a SQL statement. |
|
|
Specifies that commit operations should write log records to disk. |
|
|
Specifies whether the isolation level is read committed or serializable. |
|
|
Specifies whether the connection should use row-level locking (value = 0) or database-level locking (value = 1). |
|
|
Enables an application to configure the lock wait interval for the connection. |
|
|
Specifies that value used for the LogPurge attribute should match those of current connections. |
|
|
The threshold at which TimesTen returns a warning and throws an SNMP trap when the permanent partition of the database is low in memory. |
90% |
|
Determines if commands are shared between connections. |
|
|
See "UID and PWD". |
Specify the password that corresponds with the specified UID. When caching data from an Oracle database, PWD specifies the TimesTen password. You can specify the Oracle PWD in the connection string, if necessary. |
None |
The value of the encrypted user password. |
None |
|
Determines whether TimesTen returns a warning and throws an SNMP trap if a query times out before executing. |
|
|
Assigns a connection to a replication track. |
None |
|
Specifies the time limit in seconds within which the database should execute SQL statements. |
|
|
The threshold at which TimesTen returns a warning and throws an SNMP trap when the temporary partition of the database is low in memory. |
|
|
See "UID and PWD". |
Specify a user name that is defined on the TimesTen server. When caching data from an Oracle database, the UID must match the UID on the Oracle database that is being cached in TimesTen. |
None |
Specifies that the connection attempt should wait if an immediate connection is not possible. |
|
Table 1-4 NLS general connection attributes
Name | Description | Default |
---|---|---|
The character encoding for the connection, which may be different from the database character set. |
|
|
The default length semantics configuration. |
|
|
Determines whether an error is reported when there is data loss during an implicit or explicit character type conversion between |
|
|
The collating sequence to use for linguistic comparisons. |
|
Table 1-5 PL/SQL first connection attributes
Name | Description | Default |
---|---|---|
Enables or disables whether PL/SQL. |
|
|
The virtual address at which the shared memory segment is loaded into each process that uses the TimesTen direct drivers. |
Platform specific |
|
The size in megabytes of the shared memory segment used by PL/SQL. |
32 MB |
Table 1-6 PL/SQL general connection attributes
Name | Description | Default |
---|---|---|
Controls whether the PL/SQL compiler generates cross-reference information. |
|
|
Controls conditional compilation of PL/SQL units. |
|
|
Specifies the maximum amount of process heap memory in MB that PL/SQL can use for this connection. |
|
|
The optimization level that the PL/SQL compiler uses to compile PL/SQL library units. |
|
|
The number of seconds a PL/SQL procedure can run before being automatically terminated. |
30 seconds |
Table 1-7 TimesTen Cache first connection attributes
Name | Description | Default |
---|---|---|
Enables the AWT propagation method to be used on Oracle database tables. |
|
Table 1-8 TimesTen Cache database attributes
Name | Description | Default |
---|---|---|
Indicates the number of threads necessary to apply changes to the Oracle database. |
|
|
Enables cache grid. |
|
|
Sets the maximum message wait time in seconds. |
|
Table 1-9 TimesTen Cache general connection attributes
Name | Description | Default |
---|---|---|
Enables or disables transparent load of data from an Oracle database to dynamic cache groups. |
1 (Enables Dynamic cache group load) |
|
Determines if an error message is returned upon a transparent load failure. |
0 (Errors are not returned) |
|
The Oracle Service Name of the Oracle database instance from which data is to be loaded into a TimesTen database. This attribute is only used by the cache agent. Set the |
None |
|
Identifies the password for the Oracle database that is being cached in TimesTen. |
None |
|
Specifies which SQL statements are executed locally in TimesTen and which SQL statements are passed through to the Oracle database for execution. |
0 |
|
Specifies whether to enable or disable the installation of Application Failover (TAF) and Fast Application Notification (FAN) callbacks. |
1 (Install callbacks) |
Table 1-10 TimesTen Client connection attributes
Name | Description | Default |
---|---|---|
The port number on which the TimesTen server is listening. |
None |
|
The port number on which the TimesTen server should listen if an automatic failover occurs. |
None |
|
A range for the failover port numbers. |
None |
|
Name of the computer where the TimesTen Server is running or a logical TimesTen server name. |
None |
|
If an automatic failover occurs, the name of the computer where the TimesTen Server should be running or a logical TimesTen server name. |
None |
|
Server DSN corresponding to the TimesTen database. |
None |
|
Server DSN corresponding to the TimesTen database, if an automatic failover occurs. |
None |
|
Optional. Timeout period, in seconds, for completion of a TimesTen client/server operation. |
|
Table 1-11 TimesTen Server connection attributes
Name | Description | Default |
---|---|---|
The maximum number of concurrent connections a child TimesTen server process can handle. |
1 |
|
The desired number of TimesTen server processes for the DSN. |
|
|
The size in KB of the thread stack for each connection. |
|
Data store attributes are set at data store creation time. The data store attributes are listed in Table 1-1, "Data store attributes" and described in detail in this section.
These attributes can be assigned values only during database creation by the instance administrator.
The data source name (DSN) uniquely identifies the attributes to a connection. It serves two purposes:
As a unique identifier to the ODBC driver manager (if one is present), allowing it to associate a Data Store Name with a specific ODBC driver.
As one of potentially many name aliases to a single physical database where the name alias has unique attributes associated with it.
The database attributes can apply to either the data source name (connection to a database) or the Data Store Path Name (database).
On Windows, the data source name and all configuration information associated with the data source (including the database path name) are stored in the system registry. The ODBC driver manager and TimesTen use this information.
The database path name uniquely identifies the physical database. It is the full path name of the database and the file name prefix, for example: C:\data\AdminData
. This name is not a file name. The actual database file names have suffixes, such as .ds0
and .log0
, for example C:\data\AdminData.ds0
and C:\data\AdminData.log0
.
Note:
You are required to specify the database path and name at database creation time. It cannot be altered after the database has been created.Set DataStore
as follows:
Where to set the attribute | How the attribute is represented | Setting |
---|---|---|
C or Java programs or UNIX odbc.ini file |
DataStore |
Full path to the physical database that the data source name references. |
Windows ODBC Data Source Administrator | Data Store Path + Name field | Full path to the physical database that the data source name references. |
The database character set determines the character set in which data is stored.
Note:
You are required to specify the database character set at database creation time only. It cannot be altered after the database has been created. If you do not specify a value for this attribute when creating a database, TimesTen returns error message 12701.Generally, your database character set should be chosen based on the data requirements. For example: Do you have data in Unicode or is your data in Japanese on UNIX (EUC
) or Windows (SJIS
)?
You should choose a connection character set that matches your terminal settings or data source. See "ConnectionCharacterSet".
When the database and connection character sets differ, TimesTen performs the data conversion internally based on the connection character set. If the connection and database character sets are the same, TimesTen does not need to convert or interpret the data set. Best performance occurs when connection and database character sets match, since no conversion is required.
To use this attribute you must specify a supported character set. For a list of supported character set names, see "Supported character sets" below.
There are several things to consider when choosing a character set for your database. For a discussion about these considerations, see "Choosing a database character set" in Oracle TimesTen In-Memory Database Operations Guide.
Set DatabaseCharacterSet
name as follows:
Where to set the attribute | How the attribute is represented | Setting |
---|---|---|
C or Java programs or UNIX odbc.ini file |
DatabaseCharacterSet |
Specify the preferred character set. |
Windows ODBC Data Source Administrator | Database Character Set list | Select the preferred character set from the list provided in the ODBC Data Source Administrator. |
The tables in this section describe the character sets supported in TimesTen.
Name | Description |
---|---|
JA16EUC |
EUC 24-bit Japanese |
JA16EUCTILDE |
The same as JA16EUC except for the way that the wave dash and the tilde are mapped to and from Unicode |
JA16SJIS |
Shift-JIS 16-bit Japanese |
JA16SJISTILDE |
The same as JA16SJIS except for the way that the wave dash and the tilde are mapped to and from Unicode |
KO16KSC5601 |
KSC5601 16-bit Korean |
KO16MSWIN949 |
Microsoft Windows Code Page 949 Korean |
TH8TISASCII |
Thai Industrial Standard 620-2533 - ASCII 8-bit |
VN8MSWIN1258 |
Microsoft Windows Code Page 1258 8-bit Vietnamese |
ZHS16CGB231280 |
CGB2312-80 16-bit Simplified Chinese |
ZHS16GBK |
GBK 16-bit Simplified Chinese |
ZHS32GB18030 |
GB18030-2000 |
ZHT16BIG5 |
BIG5 16-bit Traditional Chinese |
ZHT16HKSCS |
Microsoft Windows Code Page 950 with Hong Kong Supplementary Character Set HKSCS-2001 . Character set conversion to and from Unicode is based on Unicode 3.0. |
ZHT16MSWIN950 |
Microsoft Windows Code Page 950 Traditional Chinese |
ZHT32EUC |
EUC 32-bit Traditional Chinese |
Name | Description |
---|---|
BLT8CP921 |
Latvian Standard LVS8-92( 1) Windows/UNIX 8-bit Baltic |
BLT8ISO8859P13 |
ISO 8859-13 Baltic |
BLT8MSWIN1257 |
Microsoft Windows Code Page 1257 8-bit Baltic |
BLT8PC775 |
IBM-PC Code Page 775 8-bit Baltic |
CEL8ISO8859P14 |
ISO 8859-13 Celtic |
CL8ISO8859P5 |
ISO 8859-5 Latin/Cyrillic |
CL8KOI8R |
RELCOM Internet Standard 8-bit Latin/Cyrillic |
CL8KOI8U |
KOI8 Ukrainian Cyrillic |
CL8MSWIN1251 |
Microsoft Windows Code Page 1251 8-bit Latin/Cyrillic |
EE8ISO8859P2 |
ISO 8859-2 East European |
EL8ISO8859P7 |
ISO 8859-7 Latin/Greek |
ET8MSWIN923 |
Microsoft Windows Code Page 923 8-bit Estonian |
EE8MSWIN1250 |
Microsoft Windows Code Page 1250 8-bit East European |
EL8MSWIN1253 |
Microsoft Windows Code Page 1253 8-bit Latin/Greek |
EL8PC737 |
IBM-PC Code Page 737 8-bit Greek/Latin |
EE8PC852 |
IBM-PC Code Page 852 8-bit East European |
LT8MSWIN921 |
Microsoft Windows Code Page 921 8-bit Lithuanian |
NE8ISO8859P10 |
ISO 8859-10 North European |
NEE8ISO8859P4 |
ISO 8859-4 North and North-East European |
RU8PC866 |
IBM-PC Code Page 866 8-bit Latin/Cyrillic |
SE8ISO8859P3 |
ISO 8859-3 South European |
US7ASCII |
ASCII 7-bit American |
US8PC437 |
IBM-PC Code Page 437 8-bit American |
WE8ISO8859P1 |
ISO 8859-1 West European |
WE8ISO8859P15 |
ISO 8859-15 West European |
WE8MSWIN1252 |
Microsoft Windows Code Page 1252 8-bit West European |
WE8PC850 |
IBM-PC Code Page 850 8-bit West European |
WE8PC858 |
IBM-PC Code Page 858 8-bit West European |
Name | Description |
---|---|
AR8ADOS720 |
Arabic MS-DOS 720 Server 8-bit Latin/Arabic |
AR8ASMO8X |
ASMO Extended 708 8-bit Latin/Arabic |
AR8ISO8859P6 |
ISO 8859-6 Latin/Arabic |
AR8MSWIN1256 |
Microsoft Windows Code Page 1256 8-Bit Latin/Arabic |
AZ8ISO8859P9E |
ISO 8859-9 Latin Azerbaijani |
IW8ISO8859P8 |
ISO 8859-8 Latin/Hebrew |
IW8MSWIN1255 |
Microsoft Windows Code Page 1255 8-bit Latin/Hebrew |
TR8MSWIN1254 |
Microsoft Windows Code Page 1254 8-bit Turkish |
TR8PC857 |
IBM-PC Code Page 857 8-bit Turkish |
WE8ISO8859P9 |
ISO 8859-9 West European & Turkish |
Optionally, set this attribute to help you identify the Data Source Name (DSN
) and its attributes.
Set Description
as follows:
Where to set the attribute | How the attribute is represented | Setting |
---|---|---|
C or Java programs or UNIX odbc.ini file |
Description |
Text description of the Data Source Name. This attribute is optional. |
Windows ODBC Data Source Administrator | Description field | Text description of the Data Source Name. This attribute is optional. |
The Driver
attribute specifies the name of the TimesTen ODBC Driver.
For example, on Windows systems the value can be TimesTen Data Manager 11.2.2
or TimesTen Client 11.2.2
.On UNIX systems, the value of the Driver
attribute is the path name of the TimesTen ODBC Driver shared library file. The file resides in the install_dir/lib
directory.
Set Driver
as follows:
Where to set the attribute | How the attribute is represented | Setting |
---|---|---|
C or Java programs or UNIX odbc.ini file |
Driver |
Specifies the path name for the TimesTen ODBC Driver shared library file. |
Windows ODBC Data Source Administrator | Select a driver from the Create New Data Source dialog. | Specifies the Client or Data Manager driver for TimesTen and the release. |
The LogDir
attribute specifies the directory where database logs reside. Specifying this attribute enables you to place the transaction log files on a different I/O path from the database checkpoint files. This may improve throughput.
Set LogDir
as follows:
Where to set the attribute | How the attribute is represented | Setting |
---|---|---|
C or Java programs or UNIX odbc.ini file |
LogDir |
Specifies the directory where transaction log files reside. |
Windows ODBC Data Source Administrator | Transaction Log Directory field | Specifies the directory where transaction log files reside. |
The Preallocate
attribute determines whether TimesTen preallocates file system space for the database when the database is created. Setting this attribute ensures that there is sufficient space for the database when the database is saved to the file system.
Using Preallocate=1
in combination with ttRestore
or ttRepAdmin
-duplicate
and a value of PermSize
that does not match the value of PermSize
of the original database may result in two checkpoint files with different sizes. This has not been shown to have negative effects. However, the issue can be avoided completely either by using the same PermSize
as the original database or by setting Preallocate=0.
When a duplicate operation is carried out, the duplicated store has behavior consistent with a Preallocate setting of 0, even if it is set to 1 on the original or duplicated database. The behavior is indicated by the size of the checkpoint files, which is the sum of the size of the data and size of the database header.
The checkpoint files are subsequently allowed to grow to the same size as checkpoint files on the master database (PermSize
+ database header), but the space is not preallocated. The checkpoint files increase in size as data is added.
The reason for this behavior is that PreAllocate
is set at database creation time. It is not a first connection attribute. The duplicate operation is not a database creation operation, so the preallocate attribute is not honored.
Set Preallocate
as follows:
Where to set the attribute | How the attribute is represented | Setting |
---|---|---|
C or Java programs or UNIX odbc.ini file |
Preallocate |
0 (default) - Does not preallocate file system space for database when creating the database.
|
Windows ODBC Data Source Administrator | Preallocate check box | unchecked (default) - Does not preallocate file system space for database when creating the database.
checked - Preallocates file system space for the database. |
Note:
reallocating disk space for a large database is very time consuming.The RangeIndexType
attribute specifies whether user-created range indexes use T-tree or B-tree indexes.
Note:
Once a database is created with theRangeIndexType
set to 0
, you cannot use the database with a pre-11.2.2.5.0 TimesTen release.For more information on indexes, see "Overview of index types" in the Oracle TimesTen In-Memory Database Operations Guide.
Set RangeIndexType
as follows:
Where to set the attribute | How the attribute is represented | Setting |
---|---|---|
C or Java programs or UNIX odbc.ini file |
RangeIndexType |
0 - All user-created range indexes are B-tree indexes.
1 (default)- All user-created range indexes use t-tree indexes. |
Windows ODBC Data Source Administrator | Range Index Type field | B-tree - All user-created range indexes are B-tree indexes.
|
Enables parallel replication when used with the ReplicationParallelism
attribute. With parallel replication, multiple transmitters on the master send to multiple receivers on the subscriber.
Automatic parallel replication: Parallel replication over multiple threads that automatically enforces transactional dependencies and all changes applied in commit order. This is the default.
Automatic parallel replication with disabled commit dependencies: Parallel replication over multiple threads that automatically enforces transactional dependencies, but does not enforce transactions committed in the same order on the subscriber database as on the active database. You can also increase replication throughput by applying transactions to specific tracks.
User-defined parallel replication: For applications that use classic replication schemes, have very predictable transactional dependencies, and do not require that the commit order on the receiver is the same as that on the originating database. You can increase replication throughput by specifying the number of transaction tracks and apply specific transactions to each track. All tracks are read, transmitted and applied in parallel.
For more details on configuring parallel replication, see "Configuring parallel replication" in the Oracle TimesTen In-Memory Database Replication Guide.
This attribute also sets parallel propagation for AWT cache groups. By default, this attribute enables parallel propagation of updates to the Oracle database. To learn more about parallel AWT caching, see "Configuring parallel propagation to Oracle Database tables" in the Oracle TimesTen Application-Tier Database Cache User's Guide.
Set ReplicationApplyOrdering
as follows:
Where to set the attribute | How the attribute is represented | Setting |
---|---|---|
C or Java programs or UNIX odbc.ini file |
ReplicationApplyOrdering |
0 - Specifies automatic parallel replication. Automatic parallel replication is available for both classic and active standby pair replication schemes. (default)
|
Windows ODBC Data Source Administrator | Replication Apply Ordering pulldown list | 0 - Specifies automatic parallel replication. Automatic parallel replication is available for both classic and active standby pair replication schemes. (default)
|
Restrictions when using automatic parallel replication with disabled commit dependencies:
The replication scheme must be an active standby pair that uses asynchronous replication. Classic replication schemes are not supported.
The replication scheme cannot contain cache groups.
This is only supported for TimesTen Release 11.2.2.8 and following for both the active and standby masters. Both the active and standby masters must have commit dependencies disabled.
XLA is not supported.
All data stores in the replication scheme must use the same setting.
Active standby pairs cannot use user-defined parallel replication.
This attribute specifies the number of tracks, or the number of transmitter/receiver pairs, used for parallel replication.
The default value for this attribute is 1. This value indicates that single-threaded replication occurs. If the value is greater than 1, the LogBufParallelism
first connection attribute must be an integral multiple of ReplicationParallelism
.
To configure parallel replication, set this attribute to a value from 2 to 32, indicating the number of transmitter/receiver pairs.
If the CacheAWTParallelism
attribute is set to 1 or not set, the maximum allowable value for ReplicationParallelism
is 16
.
To learn more about parallel replication, see "Configuring parallel replication" in the Oracle TimesTen In-Memory Database Replication Guide.
Set ReplicationParallelism
as follows:
Where to set the attribute | How the attribute is represented | Setting |
---|---|---|
C or Java programs or UNIX odbc.ini file |
ReplicationParallelism |
n - A value between 1 and 32, indicating the number of tracks to replicate in parallel. The default is 1, single-threaded replication. |
Windows ODBC Data Source Administrator | Replication Parallelism field | n - A value between 1 and 32, indicating the number of tracks to replicate in parallel. The default is 1, single-threaded replication. |
Restrictions and things to consider when specifying parallel replication include:
When parallel replication is enabled, the Description column of the ttLogHolds
built-in procedure displays one row per track per subscriber node.
We recommend setting the value of this attribute to a value no greater than half the value of the LogBufParallelism
attribute. If you specify more replication tracks than log buffer threads, some replication tracks can remain empty.
Synchronous replication, including TWOSAFE
and RETURN RECEIPT
replication, is not supported with user-defined parallel replication.
Active standby pairs are not supported with user-defined parallel replication.
Parallel replication with disabled commit dependencies is not supported with user-defined parallel replication.
Set this attribute to create a temporary database. Temporary databases are not saved to the file system. They may, however, be shared and therefore require a data store path name. A temporary database is deleted when the last connection is closed. See "Database persistence" in Oracle TimesTen In-Memory Database Operations Guide for more information. You cannot assign the Temporary data store attribute to an existing permanent database.
Note:
You cannot back up or replicate a temporary database.Set Temporary
as follows:
Where to set the attribute | How the attribute is represented | Setting |
---|---|---|
C or Java programs or UNIX odbc.ini file |
Temporary |
0 (default) - Creates a permanent database.
|
Windows ODBC Data Source Administrator | Temporary check box | unchecked (default) - Creates a permanent database.
checked - Creates temporary a database. |
Specifies whether the names and semantics of the data types follow Oracle or TimesTen type rules. TimesTen supports both Oracle and TimesTen data types. The type mode determines what names are used to specify each data type. In some cases, a data type has both an alias name and a fixed type name. In such a situation, you can use either name. The TimesTen type mode is included for backward compatibility. When creating a DSN, use the default setting, Oracle type mode.
When caching data from an Oracle database in TimesTen, TypeMode
must be set to 0.
See "Type specifications" in Oracle TimesTen In-Memory Database SQL Reference for a list of data types and their fixed and alias names.
Set TypeMode
as follows:
Where to set the attribute | How the attribute is represented | Setting |
---|---|---|
C or Java programs or UNIX odbc.ini file |
TypeMode |
0 (default) - Oracle type mode
If no value is specified, either the default type mode or the type mode assigned when the database was created is used. |
Windows ODBC Data Source Administrator | TypeMode dropdown list | 0 (default) - Oracle type mode
If no value is specified, either the default type mode or the type mode assigned when the database was created is used. |
First connection attributes are set when a connection is made to an idle database (a database created by the instance administrator which currently has no connections) and persist for that connection and all subsequent connections until the last connection to this database is closed.
First connection attributes are listed in Table 1-2, "First connection attributes" and described in detail in this section.
If you try to connect to the database using attributes that are different from the first connection attribute settings, the new connection may be rejected or the attribute value may be ignored. However, for example, if existing connections have a LogFileSize
of one size and a new connection specifies a LogFileSize
of another size, TimesTen ignores the new value and returns a warning.
Note:
Only the instance administrator can change a first connection attribute to a value other than the one currently in effect. To change the value of a first connection attribute, you must first shut down the database and then connect withADMIN
privileges. (No privileges are required to change AutoCreate
and ForceConnect
.)If you connect to a database that has the AutoCreate
attribute set and the database does not exist yet, the database is created automatically if you supplied a valid existing path. With AutoCreate
set, TimesTen creates the database, but not the path to the database. If you attempt to connect to a database that does not exist and the AutoCreate
attribute is not set, the connection fails.
Also see "Overwrite".
Set AutoCreate
as follows:
Where to set the attribute | How the attribute is represented | Setting |
---|---|---|
C or Java programs or UNIX odbc.ini file |
AutoCreate |
0 - Does not create new database if database does not exist.
|
Windows ODBC Data Source Administrator | AutoCreate check box | unchecked - Does not create new database if database does not exist.
checked (default) - Creates a new database if database does not exist. |
Controls the frequency in seconds that TimesTen performs a background checkpoint. The counter used for the checkpoint condition is reset at the beginning of each checkpoint.
If both CkptFrequency
and CkptLogVolume
attributes have a value greater than 0, a checkpoint is performed when either of the two conditions becomes true. The values set by the ttCkptConfig
built-in procedure replace the values set by these attributes.
In the case that your application attempts to perform a checkpoint operation while a background checkpoint is in process, TimesTen waits until the background checkpoint finishes and then executes the application's checkpoint. To turn off background checkpointing, set CkptFrequency
=0 and CkptLogVolume
=0.
The value of this attribute is "sticky" as it persists across database loads and unloads unless it is explicitly changed. The default value is only used during database creation. Subsequent first connections default to using the existing value stored in the database.
Regardless of the value of this attribute, if a checkpoint fails, TimesTen attempts a checkpoint only once every 10 minutes. If a checkpoint failure occurs due to a lack of file system space, we recommend that you attempt a manual checkpoint as soon as space is available. Once any successful checkpoint occurs, background checkpointing reverts to the configured schedule.
Set CkptFrequency
as follows:
Where to set the attribute | How the attribute is represented | Setting |
---|---|---|
C or Java programs or UNIX odbc.ini file |
CkptFrequency |
Enter a value in seconds for the frequency at which TimesTen should perform a background checkpoint. The default is 600 .
If you do not specify this attribute, TimesTen uses the default value ( If the attribute is specified, but you do not supply a value, the value of Specifying a value of |
Windows ODBC Data Source Administrator | Ckpt Frequency (secs) field | Enter a value in seconds for the frequency at which TimesTen should perform a background checkpoint. The default is 600 .
If you do not specify this attribute, TimesTen uses the default value ( If the attribute is specified, but you do not supply a value, the value of |
Controls the amount of data in megabytes that collects in the log between background checkpoints. The counter used for the checkpoint condition is reset at the beginning of each checkpoint.
If both CkptFrequency
and CkptLogVolume
attributes have a value greater than 0, a checkpoint is performed when either of the two conditions becomes true. The values set by the ttCkptConfig
built-in procedure replace the values set by these attributes.
In the case that your application attempts to perform a checkpoint operation while a background checkpoint is in process, TimesTen waits until the background checkpoint finishes and then executes the application's checkpoint. To turn off background checkpointing, set CkptFrequency
=0 and CkptLogVolume
=0.
The value of this attribute is "sticky" as it persists across database loads and unloads unless it is explicitly changed. The default value is only used during database creation. Subsequent first connections default to using the existing value stored in the database.
Set CkptLogVolume
as follows:
Where to set the attribute | How the attribute is represented | Setting |
---|---|---|
C or Java programs or UNIX odbc.ini file |
CkptLogVolume |
Specify the amount of data in megabytes that can accumulate in the transaction log file between background checkpoints. The default is 0 .
If you do not specify this attribute, TimesTen uses the default value (0) for database creation. For an existing database, TimesTen will use the stored value. If the attribute is specified, but you do not supply a value, TimesTen uses the default value (0). Specifying a value of |
Windows ODBC Data Source Administrator | Ckpt LogVolume field | Specify the amount of data in MBs that can accumulate in the transaction log file between background checkpoints. The default is 0 .
If you do not specify this attribute, TimesTen uses the default value ( If the attribute is specified, but you do not supply a value, TimesTen uses the default value (0). |
Controls the maximum rate at which data should be written to disk during a checkpoint operation. This may be useful when the writing of checkpoints to disk interferes with other applications.
All background checkpoints and by checkpoints initiated by the ttCkpt
and ttCkptBlocking
built-in procedures use the rate specified by this connection attribute. Foreground checkpoints (checkpoints taken during first connect and last disconnect) do not use this rate. The rate is specified in MB per second.
A value of 0
disables rate limitation. This is the default. The value can also be specified using the ttCkptConfig
built-in procedure. The value set by the ttCkptConfig
built-in procedure replaces the value set by this attribute.
The value of this attribute is "sticky" as it persists across database loads and unloads unless it is explicitly changed. The default value is only used during database creation. Subsequent first connections default to using the existing value stored in the database. If left unspecified (or empty in the Windows ODBC Data Source Administrator), TimesTen uses the stored setting. To turn the attribute off, you must explicitly specify a value of 0
. For existing databases that are migrated to this release, the value is initialized to 0
. To use the current or default value, the attribute value should be left unspecified.
For more details about the benefits of and issues when using CkptRate
, see "Setting the checkpoint rate" in Oracle TimesTen In-Memory Database Operations Guide.
Set CkptRate
as follows:
Where to set the attribute | How the attribute is represented | Setting |
---|---|---|
C or Java programs or UNIX odbc.ini file |
CkptRate |
Specify the maximum rate in MB per second at which a checkpoint should be written to disk.
A value of If you do not specify this attribute, TimesTen uses the default value ( If the attribute is specified, but you do not supply a value, the value of Specifying a value of |
Windows ODBC Data Source Administrator | CkptRate field | Specify the maximum rate in MB per second at which a checkpoint should be written to disk.
A value of If you do not specify this attribute, TimesTen uses the default value ( If the attribute is specified, but you do not supply a value, TimesTen uses the default value ( |
Determines the number of threads used to read the checkpoint file when loading the database into memory, such as in first connection or recovery operations.
When the CkptReadThreads
attribute is set to 1
, TimesTen reads checkpoint files serially. When the CkptReadThreads
attribute is set to a value greater than 1
, TimesTen uses the specified number of threads to read checkpoint files concurrently. When the CkptReadThreads
attribute is set to 0
or unspecified, the previously specified value is used.
Set CkptReadThreads
as follows:
Where to set the attribute | How the attribute is represented | Setting |
---|---|---|
C or Java programs or UNIX odbc.ini file |
CkptReadThreads |
n - The number of threads to use when reading the checkpoint files during the loading of the database into memory. Takes an integer value of 0 or greater (maximum = 2 31-1 ). Default is 1 . |
Windows ODBC Data Source Administrator | Checkpoint Read Threads field | n - The number of threads to use when reading the checkpoint files during the loading of the database into memory. Takes an integer value of 0 or greater (maximum = 2 31-1 ). Default is 1 . |
Indicates the upper bound on the number of user-specified concurrent connections to the database. TimesTen allocates one semaphore for each expected connection. If the number of connections exceeds the value of this attribute, TimesTen returns an error.
The number of current connections to a database can be determined by viewing the output from the ttStatus
utility.
A Connections
value of 0
or no value indicates that you should use the default number of semaphores. The maximum number of allowed connections is 2047. TimesTen reserves 47 connections for internal use, leaving a maximum of 2000 connections available to applications. As a guideline, set this value to the maximum number of expected application connections plus ten percent.
If you receive an error indicating that the number of connections exceeds the value of this attribute, increase the value until you no longer receive this error.
When you enable PL/SQL (PLSQL=1
), there is both a fixed and per connection overhead allocated from the PL/SQL segment, even if you do not use PL/SQL. For details, see "PLSQL_MEMORY_SIZE".
Note:
The kernel must be configured with enough semaphores to handle all active databases. For details on setting semaphores for your system, see "Installation prerequisites" in Oracle TimesTen In-Memory Database Installation Guide.Set Connections
as follows:
Where to set the attribute | How the attribute is represented | Setting |
---|---|---|
C or Java programs or UNIX odbc.ini file |
Connections |
0 or no value - Indicates that the default value is used.
The default value is the lesser of An integer from |
Windows ODBC Data Source Administrator | Connections field | 0 or no value - Indicates that the default value is used.
The default value is An integer from |
When return receipt replication is used with the NONDURABLE TRANSMIT
option, a failed master database is allowed to recover only by restoring its state from a subscriber database using the -duplicate
option of the ttRepAdmin
utility. In other words, the failed database cannot just come up and have replication bring it up to date because it may lose some transactions that were transmitted to the subscriber but not durably committed locally. The ForceConnect
connection attribute overrides this restriction.
The ttConfiguration
built-in procedure does not return the value of the ForceConnect
attribute.
Set ForceConnect
as follows:
Where to set the attribute | How the attribute is represented | Setting |
---|---|---|
C or Java programs or UNIX odbc.ini file |
ForceConnect |
0 (default) - Do not allow connection to failed database if it is not properly restored from the corresponding subscriber database.
|
Windows ODBC Data Source Administrator | ForceConnect check box | unchecked (default) - Do not allow connection to failed database if it is not properly restored from the corresponding subscriber database.
checked - Allow connection to a failed database even if it is not properly restored from the corresponding subscriber database. |
Determines whether the first connection to the database should proceed if TimesTen recovery encounters a defective log record.
Set LogAutoTruncate
as follows:
Where to set the attribute | How the attribute is represented | Setting |
---|---|---|
C or Java programs or UNIX odbc.ini file |
LogAutoTruncate |
0 - If a defective log record is encountered, terminate recovery and return an error to the connecting application. Checkpoint and transaction log files remain unmodified.
|
Windows ODBC Data Source Administrator | LogAutoTruncate box | unchecked - If a defective log record is encountered, terminate recovery and return an error to the connecting application. Checkpoint and transaction log files remain unmodified.
checked (default) - If a defective log record is encountered, truncate the log at the defective record's location and continue with recovery. The original transaction log files are moved to a directory called |
The LogBufMB
attribute specifies the size of the internal transaction log buffer in megabytes. The default log buffer size is 64 megabytes.
If you change the value of LogBufMB
, you also may need to change the value of LogBufParallelism
to satisfy the constraint that LogBufMB
/LogBufParallelism
>=8
.
If you increase the value of LogBufMB
, ensure the value of LogFileSize
is greater than or equal to the value of LogBufMB
(LogFileSize >= LogBufMB
).
Set LogBufMB
as follows:
Where to set the attribute | How the attribute is represented | Setting |
---|---|---|
C or Java programs or UNIX odbc.ini file |
LogBufMB |
n - Size of log buffer in megabytes.
If not set and the database exists, TimesTen uses the value stored in the database. If not set and the database is being created, TimesTen uses the default value (64). On 32-bit systems, the maximum log file is 1024 MB (1 GB). On 64-bit systems, the maximum value is 65,536 MB (64 GB). |
Windows ODBC Data Source Administrator | Log Buffer Size (MB) field | Size of log buffer, in megabytes.
If not set and the database exists, TimesTen uses the value stored in the database. If not set and the database is being created, TimesTen uses the default value (64). On 32-bit systems, the maximum log file is 1024 MB (1 GB). On 64-bit systems, the maximum value is 65,536 MB (64 GB). |
The LogBufParallelism
attribute specifies the number of transaction log buffer strands to which TimesTen writes log files before the log is written to disk, allowing for improved log performance. Each buffer has its own insertion latch. Records are inserted in any of the strands. The log flusher gathers records from all strands and writes them to the log files.
The maximum number of strands is 64. The default is 4
.
If you change the value of LogBufParallelism
, you also may need to change the value of LogBufMB
to satisfy the constraint that LogBufMB
/LogBufParallelism
>=8.
Set LogBufParallelism
as follows:
Where to set the attribute | How the attribute is represented | Setting |
---|---|---|
C or Java programs or UNIX odbc.ini file |
LogBufParallelism |
An integer value between 1 and 64. Default is 4 . |
Windows ODBC Data Source Administrator | Log Buffer Parallelism field | An integer value between 1 and 64. Default is 4 . |
The LogFileSize
attribute specifies the maximum size of transaction log files in megabytes. The minimum value is 8 MB. The default value is 64 MB. If you specify a size smaller than 8 MB, TimesTen returns an error message. Before TimesTen release 11.2.1.4, the minimum size was 1 MB. If you created your database in a previous release of TimesTen and specified a log file size of less than 8 MB, you must increase the value assigned to this attribute to avoid an error.
Actual transaction log file sizes may be slightly smaller or larger than LogFileSize
because log records cannot span transaction log files.
If you specify a value of zero, TimesTen uses the default transaction log file size if the database does not exist. If the database exists, TimesTen uses the current specified transaction log file size.
Set the value of LogFileSize
to be larger than or equal to the value of LogBufMB
(LogFileSize >= LogBufMB
).
Set LogFileSize
as follows:
Where to set the attribute | How the attribute is represented | Setting |
---|---|---|
C or Java programs or UNIX odbc.ini file |
LogFileSize |
n - Size of transaction log file in megabytes. Default is 64 when the database is created and 0 (current size in effect) on subsequent connections. The minimum size is 8 MB.
On 32-bit systems, the maximum log file is 1024 MB (1 GB). On 64-bit systems, the maximum value is 65,536 MB (64 GB). |
Windows ODBC Data Source Administrator | Log files Size (MB) field | Size of transaction log file in megabytes. Default is 64 when the database is created and 0 (current size in effect) on subsequent connections. The minimum size is 8 MB.
On 32-bit systems, the maximum log file is 1024 MB (1 GB). On 64-bit systems, the maximum value is 65,536 MB (64 GB). |
Controls the method used by TimesTen to write and sync log data to transaction log files. The overall throughput of a system can be significantly affected by the value of this attribute, especially if the application chooses to commit most transactions durably.
As a general rule, use the value 2
if most of your transactions commit durably and use the value 1 otherwise.
For best results, however, experiment with both values using a typical workload for your application and platform. Although application performance may be affected by this attribute, transaction durability is not affected. Changing the value of this attribute does not affect transaction durability in any way.
Set LogFlushMethod
as follows:
Where to set the attribute | How the attribute is represented | Setting |
---|---|---|
C or Java programs or UNIX odbc.ini file |
LogFlushMethod |
0 - Write data to the transaction log files using the previously used value.
|
Windows ODBC Data Source Administrator | Log Flush Method dropdown list | 0 - Write data to the transaction log files using the previously used value.
|
If the LogPurge
attribute is set, TimesTen automatically removes transaction log files when they have been written to both checkpoint files and there are no transactions that still need the transaction log files' contents. The first time checkpoint is called, TimesTen writes the contents of the transaction log files to one of the checkpoint files. When checkpoint is called the second time, TimesTen writes the contents of the transaction log files to the other checkpoint file.
TimesTen purges the transaction log files if all these conditions are met:
The contents of the transaction log files have been written to both checkpoint files.
The transaction log files are not pending incremental backup.
If replication is being used, the transaction log files have been replicated to all subscribers.
If XLA is being used, all XLA bookmarks have advanced beyond the transaction log files.
The transaction log files are not being used by any distributed transactions using the XA interface.
If this attribute is set to 0
or unchecked, unneeded transaction log files are appended with the.arch
suffix. Applications can then delete the files.
Set LogPurge
as follows:
Where to set the attributes | How the attribute is represented | Setting |
---|---|---|
C or Java programs or UNIX odbc.ini file |
LogPurge |
0 - Does not remove old transaction log files at connect and checkpoint.
|
Windows ODBC Data Source Administrator | LogPurge check box | unchecked - Does not remove old transaction log files at connect and checkpoint.
checked (default) - Removes old transaction log files at connect and checkpoint. |
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 AIX the MemoryLock
attribute is not implemented. The shared memory segment is locked when you use large pages, on AIX. You can lock the shared segment by using large pages. The Oracle TimesTen In-Memory Database Installation Guide contains more details about large pages.
The PL/SQL shared memory segment is not subject to MemoryLock
.
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.
On Solaris systems, the instance administrator must have the proc_lock_memory
privilege to set MemoryLock
to 1
or 2
. No special privileges are required to set MemoryLock
to 3
or 4
. Setting MemoryLock
to 3
or 4
enables use of Solaris "intimate shared memory (ISM)".
To view privileges, use:
% ppriv $$
To add the privilege for user ID timesten
, a root user uses:
# usermod -K defaultpriv=basic,proc_lock_memory timesten
After adding the privilege, the timesten
user must log in to a new shell, unload all TimesTen databases from memory and restart the TimesTen daemons.
To restart the TimesTen daemons, in the new login shell, use:
% ttDaemonadmin -restart
Set MemoryLock
as follows.
Where to set the attribute | How the attribute is represented | Setting |
---|---|---|
C or Java programs or UNIX odbc.ini file |
MemoryLock |
0 (default) - Does not lock memory.
|
Windows ODBC Data Source Administrator | Memory Lock field | 0 (default) - Does not lock memory.
|
If the Overwrite
attribute is set and there is an existing database with the same database path name as the new database, TimesTen destroys the existing database and creates a new empty database if the existing database is not in use. If the Overwrite
attribute is set and there is not a database with the specified database path name, TimesTen only creates a new database if the AutoCreate
attribute is also set (see "AutoCreate"). TimesTen ignores the Overwrite
attribute if AutoCreate
is set to 0. Applications should use caution when specifying the Overwrite
=1 attribute.
Only the instance administrator can change the value of this attribute. If a user other than an instance administrator attempts to connect to a database with Overwrite
=1, TimesTen returns an error.
Set Overwrite
as follows:
Where to set the attribute | How the attribute is represented | Setting |
---|---|---|
C or Java programs or UNIX odbc.ini file |
Overwrite |
0 (default) - TimesTen does not overwrite an existing database with the same path name.
|
Windows ODBC Data Source Administrator | Not available | Not available. |
Indicates the size in MB of the permanent memory region for the database. You may increase PermSize
at first connect but not decrease it. TimesTen returns a warning if you attempt to decrease the permanent memory region size. If the database does not exist, a PermSize
value of 0
or no value indicates to use the default size. Default size is 32 MB. For an existing database, a value of 0 or no value indicates that the existing size should not be changed.
Once you have created a database, you can make the permanent partition larger, but not smaller. See "Specifying the size of a database" in Oracle TimesTen In-Memory Database Operations Guide.
Also see information about the TempSize
connection attribute.
The ttMigrate
and ttDestroy
utilities can also be used to change the Permanent Data Size, when appropriate.
Set PermSize
as follows:
Where to set the attribute | How the attribute is represented | Setting |
---|---|---|
C or Java programs or UNIX odbc.ini file |
PermSize |
n - Size of permanent partition of the database, in megabytes; default is 32 MB for both 32-bit systems and 64-bit systems. Minimum size is 32 MB. |
Windows ODBC Data Source Administrator | Permanent Data Size field | n - Size of permanent partition of the database, in megabytes; default is 32 MB for both 32-bit systems and 64-bit systems. Minimum size is 32 MB. |
This attribute controls the number of threads used to apply changes on the active master database to the standby master database in an active standby pair replication scheme. The default is 1
. You can also set this attribute on one or more read-only subscribers in an active standby pair replication scheme to increase replication throughput from the standby master database to the subscribers.
By default, a receiver thread in the replication agent applies the changes to the standby master database. When this attribute is set to 2
, an additional thread applies the changes. Databases must be hosted on systems that have two cores (or hardware threads) or more to take advantage of setting this attribute to 2
.
If you set this attribute to 2
on the standby master database, you should also set it to 2
on the active master database to maintain increased throughput if there is a failover.
Set ReceiverThreads
as follows:
Where to set the attribute | How the attribute is represented | Setting |
---|---|---|
C or Java programs or UNIX odbc.ini file |
ReceiverThreads |
n - The number of threads used to apply changes from the active master database to the standby master database. You can also set this attribute on one or more read-only subscribers in an active standby pair replication scheme to increase replication throughput from the standby master database to the subscribers.
The possible values are 1 and 2. Default is |
Windows ODBC Data Source Administrator | ReceiverThreads field | n - The number of threads used to apply changes from the active master database to the standby master database. You can also set this attribute on one or more read-only subscribers in an active standby pair replication scheme to increase replication throughput from the standby master database to the subscribers.
The possible values are 1 and 2. Default is |
The RecoveryThreads
attribute determines the number of threads used to rebuild indexes during recovery.
If RecoveryThreads
=1, during recovery, indexes that must be rebuilt are done serially. If you have enough processors available to work on index rebuilds on your computer, setting this attribute to a number greater than 1 can improve recovery performance. The performance improvement occurs only if different processors can work on different indexes. There is no parallelism in index rebuild within the same index.
The value of RecoveryThreads
can be any value up to the number of CPUs available on your system.
The default is 1 when the database is created. Upon subsequent connections, if the database must be recovered and RecoveryThreads is unspecified or has a value of 0, then TimesTen uses the previous setting for this attribute.
Set RecoveryThreads
as follows:
Where to set the attribute | How the attribute is represented | Setting |
---|---|---|
C or Java programs or UNIX odbc.ini file |
RecoveryThreads |
n - The number of threads to use when rebuilding indexes during recovery. Default is 1 when the database is created and 0 on subsequent connections. |
Windows ODBC Data Source Administrator | RecoveryThreads field | n - The number of threads to use when rebuilding indexes during recovery. Default is 1 when the database is created and 0 on subsequent connections. |
TempSize
indicates the total amount of memory in MB allocated to the temporary region.
TempSize
has no predefined value. If left unspecified, its value is determined from PermSize
as follows:
If PermSize
is less than 64 MB, TempSize = 32 MB + ceiling(PermSize / 4 MB
).
Otherwise, TempSize = 40 MB + ceiling(PermSize / 8 MB)
.
TimesTen rounds the value up to the nearest MB.
If specified, TimesTen always honors the TempSize
value. Since the temporary data partition is recreated each time a database is loaded, the TempSize
attribute may be increased or decreased each time a database is loaded. For an existing database, a value of 0 or no value indicates that the existing size should not be changed. The minimum TempSize
is 32 MB.
Set TempSize
as follows:
Where to set the attribute | How the attribute is represented | Setting |
---|---|---|
C or Java programs or UNIX odbc.ini file |
TempSize |
n - Size of the temporary partition of the database, in MB. Minimum size is 32 MB on all platforms. |
Windows ODBC Data Source Administrator | Temporary Data Size field | n - Size of the temporary partition of the database, in MB. Minimum size is 32 MB on all platforms. |
General connection attributes are set by each connection and persist for the duration of the connection. General connection attributes are listed in Table 1-3, "General connection attributes" and described in detail in this section.
CommitBufferSizeMax
indicates the total amount of memory in MB allocated to the transaction commit buffer. Set this attribute to handle the size of reclaim records.
You can use the ALTER SESSION
SQL statement, described in Oracle TimesTen In-Memory Database SQL Reference, to assign or change the maximum size of the commit buffer within a session. The new value takes effect when a new transaction starts.
ALTER SESSION SET COMMIT_BUFFER_SIZE_MAX = n;
You can see the configured maximum for the commit buffer by calling the ttConfiguration
built-in procedure.
For more information on reclaim operations, including details about setting the commit buffer size, see "Transaction reclaim operations" in the Oracle TimesTen In-Memory Database Operations Guide. Also see information about the ttCommitBufferStats
and the ttCommitBufferStatsReset
built-in procedures.
Set CommitBufferSize
as follows:
Where to set the attribute | How the attribute is represented | Setting |
---|---|---|
C or Java programs or UNIX odbc.ini file |
CommitBufferSizse |
0 - Commit buffer gets configured with a default size (128K).
|
Windows ODBC Data Source Administrator | Maximum Commit Buffer Size field | n - Integer value. Minimum user configured size is 1 (MB), This value should be configured to a value much smaller than TempSize . |
When you call the built-in procedure ttCommitBufferStats
, the commit buffer statistics are expressed in bytes. However, the ttConfiguration
built-in procedure output and the value set by the connection attribute CommitBufferSizeMax
are expressed in MB.
This attribute is also available as a Client connection attribute.
This attribute enables you to attach a symbolic name to any database connection. Connection names are unique within a process.
TimesTen uses the symbolic name to help identify the connection in various administrative utilities, such as ttIsql
, ttXactAdmin
and ttStatus
. This can be particularly useful with processes that make multiple connections to the database, as is typical with multithreaded applications or in the identification of remote clients.
The value of this attribute is intended to be dynamically defined at connection time using the connection string. The default value is the connecting executable file name. It can also be defined statically in the DSN definition. Values used for ConnectionName
should follow SQL identifier syntax rules.
Set ConnectionName
as follows:
Where to set the attribute | How the attribute is represented | Setting |
---|---|---|
C or Java programs or UNIX odbc.ini file |
ConnectionName |
Enter a string up to 30 characters that represents the name of the connection. If the specified or default connection name is in use, TimesTen assigns the name con n , where n is an integer greater than 0 to make the name unique. If not specified, the connecting process name. |
Windows ODBC Data Source Administrator | Connection field | Enter a string up to 30 characters that represents the name of the connection. If the specified or default connection name is in use, TimesTen assigns the name con n , where n is an integer greater than 0 to make the name unique. If not specified, the connecting process name. |
This attribute controls transactional commit behavior in relation to data definition language (DDL) statements.
You can set it to the traditional TimesTen behavior or to the Oracle database behavior.
Traditionally, in TimesTen databases, DDL statements are executed as part of the current transaction and are committed or rolled back along with the rest of the transaction.
The Oracle database issues an implicit COMMIT
before and after any DDL statement.
Note:
IfPLSQL
support is enabled, the DDLCommitBehavior
must be the Oracle transactional commit behavior (value 0
).
Do not use DDL statements in XA transactions.
DDL statements include:
CREATE
, ALTER
or DROP
of any database object (including tables, views, user procedures, and indexes)
TRUNCATE
GRANT
and REVOKE
Set DDLCommitBehavior
as follows:
Where to set the attribute | How the attribute is represented | Setting |
---|---|---|
C or Java programs or UNIX odbc.ini file |
DDLCommitBehavior |
0 (default) - Oracle database style behavior. An implicit transaction commit is done before the execution of the DDL statement and a durable commit is done after execution of DDL statements.
|
Windows ODBC Data Source Administrator | DDLCommitBehavior field | 0 (default) - Oracle database style behavior. An implicit transaction commit is done before the execution of the DDL statement and a durable commit is done after execution of DDL statements.
|
Example 1-1 TimesTen commit behavior
AUTOCOMMIT OFF; CREATE TABLE t1 (c1 Varchar2(10)); COMMIT; INSERT INTO t1 VALUES('some data'); 1 row inserted. CREATE TABLE t2 (c1 INTEGER); ROLLBACK; SELECT * FROM t1; 0 rows found. SELECT * FROM t2; 2206: Table ttuser.t2 not found The command failed. INSERT INTO t1 VALUES('more data'); 1 row inserted. CREATE TABLE t1 (c1 VARCHAR2(10)); 2207: Table t1 already exists The command failed. ROLLBACK; SELECT * FROM t1; 0 rows found.
Example 1-2 Oracle commit behavior
This example shows Oracle behavior (DDLCommitBehavior
=0). In this example, the INSERT
statements and the creation of table t2
are committed. The second insert ('more data'
) is committed even though the DDL statement triggering the commit (duplicate create of table t1
) fails:
-- implicit commit here Command> CREATE TABLE t1 (c1 varchar2(10)); Table created. -- implicit commit here Command> COMMIT; Commit complete. Command> INSERT INTO t1 VALUES('some data'); 1 row created. -- implicit commit here Command> CREATE TABLE t2 (c1 INTEGER); Table created. -- implicit commit here SQL> ROLLBACK; Rollback complete. Command> SELECT * FROM t1; C1 ---------- some data Command> SELECT * FROM t2; no rows selected Command> INSERT INTO t1 VALUES('more data'); 1 row created. -- implicit commit here Command> CREATE TABLE t1 (c1 VARCHAR2(10)); CREATE TABLE t1 (c1 VARCHAR2(10)) * ERROR at line 1: ORA-00955: name is already used by an existing object -- implicit rollback Command> ROLLBACK; Rollback complete. Command> SELECT * FROM t1; C1 ---------- some data more data
Determines whether a table or a sequence is included in an active standby pair replication scheme when created. The table can be included if the DDLReplicationLevel
connection attribute is set to 2 or 3. The sequence can be included if the DDLReplicationLevel
connection attribute is set to 3.
Replication of DDL operations is enabled (with restrictions) by the set value of the DDLReplicationLevel
connection attribute. For more details, see "DDLReplicationLevel".
The value may be modified by an ALTER SESSION
SQL statement, described in Oracle TimesTen In-Memory Database SQL Reference. For example:
ALTER SESSION SET DDL_REPLICATION_ACTION='EXCLUDE';
Values set by ALTER SESSION
override the value set by this attribute.
For examples of altering an active standby pair, see "Altering an Active Standby Pair" in the Oracle TimesTen In-Memory Database Replication Guide.
When DDLCommitBehavior=0
(the default), DDL operations are automatically committed. When RETURN TWOSAFE
has been specified, errors and timeouts may occur as described in "RETURN TWOSAFE" in the Oracle TimesTen In-Memory Database Replication Guide. If a RETURN TWOSAFE
timeout occurs, the DDL transaction is committed locally regardless of the LOCAL COMMIT ACTION
that has been specified.
To learn more about replicating DDL, see "Changing user names or passwords used by replication" in the Oracle TimesTen In-Memory Database Replication Guide.
Set DDLReplicationAction
as follows:
Where to set the attribute | How the attribute is represented | Setting |
---|---|---|
C or Java programs or UNIX odbc.ini file |
DDLReplicationAction |
INCLUDE (default) - When a table or sequence is created, it is automatically added to the active standby pair scheme when the appropriate DDLReplicationLevel value is configured.
|
Windows ODBC Data Source Administrator | DDLReplicationAction field | INCLUDE (default) - When a table or sequence is created, it is automatically added to the active standby pair scheme when the appropriate DDLReplicationLevel value is configured.
|
Enables replication of a subset of data definition language (DDL) statements (with restrictions) in an active standby replication scheme.
When the value of the DDLReplicationLevel
connection attribute is set to 1, CREATE
or DROP
statements for tables, indexes, or synonyms are not replicated to the standby database. However, you can add or drop columns with the ALTER TABLE ADD
or DROP COLUMN
to or from a replicated table, and those actions are replicated to the standby database.
When the value of the DDLReplicationLevel
connection attribute is set to 2 (the default), the following DDL statements (described in Oracle TimesTen In-Memory Database SQL Reference) are replicated to the standby and any subscribers:
CREATE
or DROP INDEX
CREATE
or DROP TABLE
(including global temporary tables but not CREATE TABLE AS SELECT
)
When the value of the DDLReplicationLevel
connection attribute is set to 3, the following DDL statements (described in Oracle TimesTen In-Memory Database SQL Reference) and those replicated when the value is set to 2 are replicated to the standby and any subscribers:
Replication of the results to the standby master when setting the cache administration user name and password with the UidPwdSet
built-in procedure. You do not need to stop and restart the cache agent or replication agent to execute the UidPwdSet
built-in procedure. For more information, see "Changing cache user names or passwords" in the Oracle TimesTen Application-Tier Database Cache User's Guide or "ttCacheUidPwdSet".
The value of this attribute may be modified by an ALTER SESSION
statement, described in Oracle TimesTen In-Memory Database SQL Reference. For example:
ALTER SESSION SET DDL_REPLICATION_LEVEL=3;
Values set by ALTER SESSION
override the value set by this attribute.
For examples of altering an active standby pair, see "Altering an Active Standby Pair" in the Oracle TimesTen In-Memory Database Replication Guide.
To learn more about replicating DDL, see "Changing user names or passwords used by replication" in the Oracle TimesTen In-Memory Database Replication Guide.
Set DDLReplicationLevel
as follows:
Where to set the attribute | How the attribute is represented | Setting |
---|---|---|
C or Java programs or UNIX odbc.ini file |
DDLReplicationLevel |
1 - Replicates ALTER TABLE ADD or DROP COLUMN to the standby database. Does not replicate CREATE and DROP operations for tables, indexes, or synonyms to the standby database.
|
Windows ODBC Data Source Administrator | DDL Replication Level field | 1 - Replicates ALTER TABLE ADD or DROP COLUMN to the standby database. Does not replicate CREATE and DROP operations for tables, indexes or synonyms to the standby database.
|
Replication of DDL operations has these restrictions:
CREATE TABLE AS SELECT
statements are not replicated.
The CREATE INDEX
statement is replicated only when the index is created on an empty table.
To control whether a table or sequence is included in an active standby pair replication scheme at the time of creation, use the DDLReplicationAction
connection attribute.
Sequences with the CYCLE
attribute cannot be replicated.
Objects are replicated only when the receiving database is of a TimesTen release that supports that level of replication, and is configured for an active standby pair replication scheme. For example, replication of sequences (requiring DDL_REPLICATION_LEVEL=3
) to a database release prior to 11.2.2.7.0 is not supported. When DDLReplicationLevel
value is set to 3, both the active and standby master databases need to be TimesTen Release 11.2.2.7 or later. When DDL_REPLICATION_LEVEL=2
, the receiving database must be at least release 11.2.1.8.0 for replication of objects to be supported.
All restrictions for the UidPwdSet
built-in procedure apply.
When DDLReplicationLevel=1
or 2
, you cannot alter a table to add a NOT NULL
column to a table that is part of a replication scheme with the ALTER TABLE ... ADD COLUMN NOT NULL DEFAULT
statement. You must remove the table from the replication scheme first before you can add a NOT NULL
column to it. However, if DDLReplicationLevel=3
, then you can alter a table to add a NOT NULL
column to a table that is part of a replication scheme.
Enables an application to configure the level of diagnostics information generated by TimesTen for the connection. TimesTen diagnostics messages are warnings whose numbers lie within the range 20000 through 29999. Diagnostics
connection attribute values are integers.
Set Diagnostics as follows:
Where to set the attribute | How the attribute is represented | Setting |
---|---|---|
C or Java programs or UNIX odbc.ini file |
Diagnostics | 0 - TimesTen does not generate diagnostic messages.
|
Windows ODBC Data Source Administrator | Diagnostics field | 0 - TimesTen does not generate diagnostic messages.
|
This attribute determines whether applications use traditional TimesTen parameter binding for duplicate occurrences of a parameter in a SQL statement or Oracle-style parameter binding.
Traditionally, in TimesTen, multiple instances of the same parameter name in a SQL statement are considered to be multiple occurrences of the same parameter. When assigning parameter numbers to parameters, TimesTen assigns parameter numbers only to the first occurrence of each parameter name. The second and subsequent occurrences of a given name do not get their own parameter numbers. In this case, A TimesTen application binds a value for every unique parameter in a SQL statement. It cannot bind different values for different occurrences of the same parameter name nor can it leave any parameters or parameter occurrences unbound.In Oracle Database, multiple instances of the same parameter name in a SQL statement are considered to be different parameters. When assigning parameter numbers, Oracle Database assigns a number to each parameter occurrence without regard to name duplication. An Oracle Database application, at a minimum, binds a value for the first occurrence of each parameter name. For the subsequent occurrences of a given parameter, the application can either leave the parameter occurrence unbound or it can bind a different value for the occurrence.
For more details on parameter binding, see Oracle TimesTen In-Memory Database SQL Reference.
Set DuplicateBindMode
as follows:
Where to set the attribute | How the attribute is represented | Setting |
---|---|---|
C or Java programs or UNIX odbc.ini file |
DuplicateBindMode |
0 (default) - SQL statements use the Oracle parameter binding model.
|
Windows ODBC Data Source Administrator | Duplicate Bind Mode check box | unchecked (default) - SQL statements use the Oracle parameter binding model.
checked - SQL statements use the traditional TimesTen parameter binding model. |
By default, DurableCommits
is set to 0
. With this setting, TimesTen writes a log record to the file system when a transaction is committed, but the log record is not immediately written to disk. This reduces transaction execution time at the risk of losing some committed transactions if a failure occurs. When DurableCommits
is set to 1, TimesTen writes a log record to disk when the transaction is committed.
A connection can also call the ttDurableCommit
built-in procedure to do durable commits explicitly on selected transactions. A call to ttDurableCommit
flushes the log buffer to disk. The log buffer is shared among all connections and contains log records from transactions of all connections.
Log records are continually copied from the file system to disk. You can use LogFlushMethod
to control when the file system is synchronized with the disk.
Set DurableCommits
as follows:
Where to set the attribute | How the attribute is represented | Setting |
---|---|---|
C or Java programs or UNIX odbc.ini file |
DurableCommits |
0 (default) - TimesTen does not write the transaction log to disk on transaction commit.
|
Windows ODBC Data Source Administrator | Durable Commits check box | unchecked (default) - TimesTen does not write the transaction log to disk on transaction commit.
checked - TimesTen writes log to disk on transaction commit. |
By default, TimesTen uses read committed isolation. The Isolation attribute specifies the initial transaction isolation level for the connection. For a description of the isolation levels, see "Concurrency control through isolation and locking" in Oracle TimesTen In-Memory Database Operations Guide.
The value may be modified by an ALTER SESSION
statement, described in Oracle TimesTen In-Memory Database SQL Reference. For example:
ALTER SESSION SET ISOLATION_LEVEL=serializable;
CREATE CACHE GROUP
, ALTER CACHE GROUP
and DROP CACHE GROUP
statements are not supported in serializable isolation mode.
If the passthrough or the propagate TimesTen Cache feature is used, the TimesTen isolation level setting is inherited by the Oracle session. TimesTen serializable mode is mapped to Oracle's serializable mode. TimesTen read committed mode is mapped to Oracle's read committed mode. For more details on the passthrough attribute, see "PassThrough".
With PassThrough
set to 3, you must use an ALTER SESSION
statement to permanently modify the isolation level on the Oracle database connection. For example on a connection to the DSN repdb1_1122
:
Call ttIsql
and connect to the DSN
with PassThrough
level 3:
% ttIsql; Command> connect "dsn=repdb1_1122;passthrough=3"; Connection successful:. . .PassThrough=3; TypeMode=0; <default setting Autocommit=1>
Turn off AutoCommit
:
Command> autocommit=0;
Temporarily change the PassThrough
level to 0
:
Command> passthrough=0;
Alter the isolation level to serializable:
Command> prepare 1 ALTER SESSION SET ISOLATION_LEVEL=serializable; Command> commit; Command> exec=1;
Set Isolation
as follows:
Where to set the attribute | How the attribute is represented | Setting |
---|---|---|
C or Java programs or UNIX odbc.ini file |
Isolation |
0 - Connects to database in serializable isolation mode.
|
Windows ODBC Data Source Administrator | Isolation dropdown list | 0 - Connects to database in serializable isolation mode.
|
By default, TimesTen enables row-level locking for maximum concurrency. With row-level locking, transactions usually obtain locks on the individual rows that they access, although a transaction may obtain a lock on an entire table if TimesTen determines that doing so would result in better performance. Row-level locking is the best choice for most applications, as it provides the finest granularity of concurrency control. To use row-level locking, applications must set the LockLevel
connection attribute to 0 (the default value). To cache Oracle database tables, you must set row-level locking. To CREATE
, DROP
, or ALTER
a user, you can only use row-level locking and thus, the lock level must be set to 0 before you can perform any of these operations.
To give every transaction in this connection exclusive access to the database, you can enable database-level locking by setting the LockLevel
attribute to 1. Doing so may improve performance for some applications.
A connection can change the desired lock level at any time by calling the ttLockLevel
built-in procedure. Connections can also wait for unavailable locks by calling the ttLockWait
built-in procedure. Different connections can coexist with different levels of locking, but the presence of even one connection doing database-level locking leads to loss of concurrency. To display a list of all locks on a particular database you can use the ttXactAdmin
utility.
When using PL/SQL in your applications, set LockLevel
=0 and selectively change to database level locking for specific transactions that require that level of locking by using the ttLockLevel
built-in procedure.
Set LockLevel
as follows:
Where to set the attribute | How the attribute is represented | Setting |
---|---|---|
C or Java programs or UNIX odbc.ini file |
LockLevel |
0 (default) - Transactions access the database using row-level locking.
|
Windows ODBC Data Source Administrator | DS-Level Locking check box | unchecked (default) - Transactions access the database using row-level locking.
checked - Transactions access the database by acquiring an exclusive lock on the entire database. |
Enables an application to configure the lock wait interval for the connection. The lock wait interval is the number of seconds to wait for a lock when there is contention on it. Sub-second LockWait
values significant to tenths of a second can be specified using decimal format for the number of seconds. For example:
LockWait = 0.1
results in a lock wait of one tenth of a second.
LockWait
may be set to any value between 0 and 1,000,000 inclusive to a precision of tenths of a second. The default is 10
seconds:
LockWait = 10.0
Actual lock wait response time is imprecise and may be exceeded by up to one tenth of a second, due to the scheduling of the agent that detects timeouts. This imprecision does not apply to zero second timeouts, which are always reported immediately.
The number of connections to a database can impact the time needed to resolve lock contentions. If you anticipate having many connections to the database, increase the lock wait interval.
Cache grid uses message wait time with lock wait time. When using cache grid, lock wait times are approximately half the value you have specified. If your applications require the full lock wait time, specify twice the desired seconds.
A connection can change the lock wait interval at any time by calling the ttLockWait
built-in procedure.
To display a list of all locks on a particular database you can use the TimesTen utility ttXactAdmin
.
Set LockWait
as follows:
Where to set the attribute | How the attribute is represented | Setting |
---|---|---|
C or Java programs or UNIX odbc.ini file |
LockWait |
s - Indicates the number of seconds to wait for locking conflict resolution before timing out. The default is 10 seconds. |
Windows ODBC Data Source Administrator | LockWait field | s - Indicates the number of seconds to wait for locking conflict resolution before timing out. The default is 10 seconds. |
The first connection to a database determines whether the transaction log files are purged. Any subsequent connection must specify the same value for the LogPurge
attribute or TimesTen generates an error. If a connection does not know the current state of the LogPurge
attribute, MatchLogOpts
can be set so that the logging attributes match.
MatchLogOpts
is set to True
for the first connection, TimesTen returns an error and the connection fails. Use the attribute with MatchLogOpts
connection attribute with caution.Set MatchLogOpts
as follows:
Where to set the attribute | How the attribute is represented | Setting |
---|---|---|
C or Java programs or UNIX odbc.ini file |
MatchLogOpts |
0 (default) - Value of LogPurge is used.
|
Windows ODBC Data Source Administrator | Match Log Opts check box | unchecked (default) - Value of LogPurge is used.
checked - TimesTen ignores the value of |
Indicates the threshold percentage at which TimesTen issues out-of-memory warnings for the permanent partition of the database's memory. The database is considered no longer out of permanent memory if it falls 10% below this threshold. An application must call the built-in procedure ttWarnOnLowMemory
to receive out-of-memory warnings. The threshold also applies to SNMP warnings. Also see "Diagnostics through SNMP Traps" in Oracle TimesTen In-Memory Database Error Messages and SNMP Traps.
Set PermWarnThreshold
as follows:
Where to set the attribute | How the attribute is represented | Setting |
---|---|---|
C or Java programs or UNIX odbc.ini file |
PermWarnThreshold |
p - Percentage at which TimesTen should issue out-of-memory warnings. Default is 90 . |
Windows ODBC Data Source Administrator | Low Memory Warning Thresholds for Permanent Data field | p - Percentage at which TimesTen should issue out-of-memory warnings. Default is 90 . |
When multiple connections execute the same command, they access common command structures controlled by a single command lock. To avoid sharing their commands and possibly placing contention on the lock, you can use PrivateCommands
. This gives you better scaling at the cost of increased temporary space usage.
By default, the PrivateCommands
is turned off and commands are shared.
Set PrivateCommands
as follows:
Where to set the attribute | How the attribute is represented | Setting |
---|---|---|
C or Java programs or UNIX odbc.ini file |
PrivateCommands |
0 (default) - Commands are shared with other connections.
|
Windows ODBC Data Source Administrator | Private Commands field | 0 (default) - Commands are shared with other connections.
|
If there are many copies of the same command, all of them are invalidated by a DDL or statistics change. Reprepare of these multiple copies takes longer when PrivateCommands
= 1. With more commands DDL execution can take slightly longer.
When using the PrivateCommands
attribute, memory consumption can increase considerably if the attribute is not used cautiously. For example, if PrivateCommands
=1 for an application that has 100 connections with 100 commands, there are 10,000 commands in the system: one private command for each connection.
The PWDCrypt
contains an encrypted version of the corresponding PWD
value. The value for PWD
is stored in clear text, which does not allow special characters, in the .odbc.ini
file on UNIX and in the Windows Registry on Windows. Any users who have access to the .odbc.ini
file or Windows Registry can view the value for this attribute. The PWDCrypt
attribute enables special characters, is case sensitive and contains the value of the encrypted password.
For security reasons, the PWDCrypt
attribute should only be placed in User DSNs or user private ODBCINI
files. The presence of the PWDCrypt
in System DSNs enables any user to use the PWDCrypt
value to connect to TimesTen, even though they have no knowledge of the cleartext password.
To generate the value for this attribute, run the ttUser
utility.
If PWD
and PWDCrypt
are both supplied, TimesTen uses the value of the PWD
attribute. See "UID and PWD".
TimesTen does not store the value of the PWD
attribute anywhere in the TimesTen system.
See "Required user authentication for utilities" in the description of "UID and PWD" for details about the treatment of passwords when using utilities that require specific privileges.
Set PWDCrypt
as follows:
Use this attribute to write a warning to the support log and throw an SNMP trap when the execution time of a SQL statement exceeds the specified value. For queries executed by the replication agent, see Oracle TimesTen In-Memory Database Replication Guide. You cannot set a query threshold for a SQL statement that is executed by the cache agent. The value of QueryThreshold
applies to all connections. It applies to all SQL statements except those executed by the replication agent or the cache agent.
The value of this attribute can be any integer equal to or greater than 0. The default value is 0
. A value of 0
indicates that no warning is issued. The unit is seconds.
Set QueryThreshold
as follows:
Where to set the attribute | How the attribute is represented | Setting |
---|---|---|
C or Java programs or UNIX odbc.ini file |
QueryThreshold |
A nonnegative integer. Default is 0 and indicates that TimesTen does not return a warning. |
Windows ODBC Data Source Administrator | QueryThreshold (secs) field | A nonnegative integer. Default is 0 and indicates that TimesTen does not return a warning. |
When managing track-based parallel replication, you can assign a connection to a replication track. All transactions issued by the connection are assigned to this track, unless the track is altered.
To start track-based parallel replication you must set a value for the ReplicationParallelism
attribute, specifying the number of replication tracks to be applied in parallel. You must also set ReplicationApplyOrdering
either to 1 or 2, depending on if you are using automatic or user-defined parallel replication.
The Track_ID
column of the TTREP.REPPEERS
system table (described in Oracle TimesTen In-Memory Database System Tables and Views Reference) shows the track associated with the connection.
You can use the ALTER SESSION
SQL statement, described in Oracle TimesTen In-Memory Database SQL Reference, to assign or change the value of this attribute within a session. For example:
ALTER SESSION SET REPLICATION_TRACK=4;
Set ReplicationTrack
as follows:
Where to set the attribute | How the attribute is represented | Setting |
---|---|---|
C or Java programs or UNIX odbc.ini file |
ReplicationTrack |
n - An integer between 1 and 64 that specifies the replication track to be used by transactions issued by the connection. |
Windows ODBC Data Source Administrator | Replication Track field | n - An integer between 1 and 64 that specifies the replication track to be used by transactions issued by the connection. |
Restrictions and things to consider when specifying user-defined parallel replication include:
Synchronous replication, including TWOSAFE
and RETURN RECEIPT
replication, is not supported with user-defined parallel replication.
Active standby pairs are not supported with user-defined parallel replication.
Use this attribute to specify the time limit in seconds within which the database should execute SQL statements.
The value of SQLQueryTimeout
can be any integer equal to or greater than 0. The default value is 0
. A value of 0
indicates that the query does not time out.
This attribute does not stop TimesTen Cache operations that are being processed on an Oracle database. This includes passthrough statements, flushing, manual loading, manual refreshing, synchronous writethrough, and propagating.
Set SQLQueryTimeout
as follows:
Where to set the attribute | How the attribute is represented | Setting |
---|---|---|
C or Java programs or UNIX odbc.ini file |
SQLQueryTimeout |
n - Time limit in seconds for which the database should execute SQL queries. |
Windows ODBC Data Source Administrator | QueryTimeout (secs) field | n - Time limit in seconds for which the database should execute SQL queries. |
Indicates the threshold percentage at which TimesTen issues out-of-memory warnings for the temporary partition of the database's memory. The database is considered no longer out of temporary memory if it falls 10% below this threshold. An application must call the built-in procedure ttWarnOnLowMemory
to receive out-of-memory warnings. The threshold also applies to SNMP warnings. See "ttWarnOnLowMemory". Also see "Diagnostics through SNMP Traps" in Oracle TimesTen In-Memory Database Error Messages and SNMP Traps
Set TempWarnThreshold
as follows:
Where to set the attribute | How the attribute is represented | Setting |
---|---|---|
C or Java programs or UNIX odbc.ini file |
TempWarnThreshold |
p - Percentage at which warning should be issued. Default is 90 . |
Windows ODBC Data Source Administrator | Low Memory Warning Thresholds for Temporary Data field | p - Percentage at which warning should be issued. Default is 90 . |
A user ID and password must be provided by a user who is identified internally to TimesTen. Alternatively, an encrypted password can be supplied using the PWDCrypt
attribute. Some TimesTen operations prompt for the UID
and PWD
of the user performing the operation.
For TimesTen client/server applications, specify UID
and PWD
either in the Client DSN configuration or in the connection string. The UID
and PWD
values specified in a connection string take precedence over the values specified in the Client DSN configuration.
When caching Oracle database tables, PWD
specifies the TimesTen password while OraclePWD
specifies the Oracle password.
Required user authentication for utilities
All utilities that require a password prompt for one.
If a UID
connection attribute is given but no PWD
attribute is given, either through a connection string or in the ODBCINI
file for the specified DSN, TimesTen prompts for a password. When explicitly prompted, input is not displayed on the command line.
A password given on the command line, before TimesTen prompts for the password, is visible to the ps
command, so use of the PWD
connection attribute is not recommended in the first call to the utility. For example, the following usage is not recommended:
% ttIsql -connStr "DSN=mydsn;UID=terry;PWD=secret";
Generally, when no UID
connection attribute is given, the UID
is assumed to be the user name identified by the operating system, and TimesTen does not prompt for a password.
When a utility accepts a DSN, connection string or database path as a parameter, specify the value at the end of the command line.
Set UID
and PWD
as follows:
Where to set the attribute | How the attribute is represented | Setting |
---|---|---|
C or Java programs or UNIX odbc.ini file |
UID |
Character string specifying the user ID. |
C or Java programs or UNIX odbc.ini file |
PWD |
Character string specifying the password that corresponds to the user ID. |
Windows ODBC Data Source Administrator | User ID field | Character string specifying the user ID. |
When an application requests a connection to a TimesTen database and the connection is not possible (perhaps during concurrent loading/recovery of a database), TimesTen normally waits for completion of the conflicting connection. In some cases, it can take some time for an application to connect to a database. If the WaitForConnect
attribute is off and the database is not immediately accessible, TimesTen returns immediately an error. For a description of the error, look for the error message number in "Warnings and Errors" in Oracle TimesTen In-Memory Database Error Messages and SNMP Traps.
Set WaitForConnect
as follows:
Where to set the attribute | How the attribute is represented | Setting |
---|---|---|
C or Java programs or UNIX odbc.ini file |
WaitForConnect |
0 - Does not wait if connection to database fails.
|
Windows ODBC Data Source Administrator | Wait For Connect check box | unchecked - Does not wait if connection to database fails.
checked (default) - Waits until connection to database is possible. |
NLS connection attributes are set by each connection and persist for the duration of the connection. These attributes control the globalization behaviors of the database. NLS general connection attributes are listed Table 1-4, "NLS general connection attributes" and described in detail in this section.
You can use the ALTER SESSION
statement, described in Oracle TimesTen In-Memory Database SQL Reference, to change NLS parameters to override the values that are assigned to these attributes at connection time.
ConnectionCharacterSet
is also available as a Client connection attribute.
This attribute specifies the character encoding for the connection, which may be different from the database character set. This can be useful when you have multiple connections to a database and one or more of those connections requires a character set that differs from that specified in the database.
The connection character set determines the character set in which data is displayed or presented.
Generally, you should choose a connection character set that matches your terminal settings or data source. Your database character set should be chosen based on the data requirements. For example: Do you have data in Unicode or is your data in Japanese on UNIX (EUC) or Windows (SJIS)?
When the database and connection character sets differ, TimesTen performs data conversion internally based on the connection character set. If the connection and database character sets are the same, TimesTen does not need to convert or interpret the data set. Best performance occurs when connection and database character sets match, since no conversion is required.
Parameters and SQL query text sent to the connect should be in the connection character set. Results and error messages returned by the connection are returned in the connection character set.
Character set conversions are not supported for the TIMESTEN8
character set. A ConnectionCharacterSet
value of TIMESTEN8
results in an error if the value assigned to the DatabaseCharacterSet
is not TIMESTEN8
.
This attribute accepts the same values used for the DatabaseCharacterSet
. For a list of supported character set names, see "Supported character sets".
Set ConnectionCharacterSet
as follows:
Where to set the attribute | How the attribute is represented | Setting |
---|---|---|
C or Java programs or UNIX odbc.ini file |
ConnectionCharacterSet |
The default value for ConnectionCharacterSet is US7ASCII , unless the database uses the TIMESTEN8 character set. |
Windows ODBC Data Source Administrator | Connection CharacterSet list | The default value for ConnectionCharacterSet is US7ASCII , unless the database uses the TIMESTEN8 character set. |
TimesTen uses the NLS_LENGTH_SEMANTICS
attribute to set the default length semantics configuration. Length semantics determines how the length of a character string is determined. The length can be treated as a sequence of characters or a sequence of bytes.
Set NLS_LENGTH_SEMANTICS
as follows:
Where to set the attribute | How the attribute is represented | Setting |
---|---|---|
C or Java programs or UNIX odbc.ini file |
NLS_LENGTH_ SEMANTICS |
Specify either BYTE (default) or CHAR . |
Windows ODBC Data Source Administrator | NLS_LENGTH_ SEMANTICS list | Select either BYTE (default) or CHAR . |
The NLS_NCHAR_CONV_EXCP
attribute determines whether an error is reported when there is data loss during an implicit or explicit character type conversion between NCHAR
/NVARCHAR2
data and CHAR
/VARCHAR2
data. A replacement character is substituted for characters that cannot be converted.
Implicit and explicit conversions between CHAR
and NCHAR
are supported, unless the database uses the TIMESTEN8
character set.
Set NLS_NCHAR_CONV_EXCP
as follows:
Where to set the attribute | How the attribute is represented | Setting |
---|---|---|
C or Java programs or UNIX odbc.ini file |
NLS_NCHAR_CONV_EXCP |
0 (default) - Errors are not reported when there is a data loss during character type conversion.
|
Windows ODBC Data Source Administrator | NLS_NCHAR_ CONV_EXCP check box | unchecked (default) - Error messages are not reported when there is a data loss during character type conversion.
checked - Error messages are reported when there is a data loss during character type conversion. |
The NLS_SORT
attribute indicates which collating sequence to use for linguistic comparisons. It accepts the values listed in "Supported Linguistic Sorts." All these values can be modified to do case-insensitive sorts by appending _CI
to the value. To perform accent-insensitive and case-insensitive sorts, append _AI
to the value.
For materialized views and cache groups, TimesTen recommends that you explicitly specify the collating sequence using the NLSSORT
SQL function rather than using this attribute in the connection string or DSN definition.
Operations involving character comparisons support linguistic case-sensitive collating sequences. Case-insensitive sorts may affect DISTINCT
value interpretation.
NLS_SORT
may affect many operations. The supported operations that are sensitive to collating sequence are:
MIN
, MAX
BETWEEN
=
, <>
, >
, >=
, <
, <=
DISTINCT
CASE
GROUP BY
HAVING
ORDER BY
IN
LIKE
Only BINARY
sort is supported with the TIMESTEN8
character set.
NLS_SORT
settings other than BINARY
may have significant performance impact on character operations.
Note:
Primary key indexes are always based on theBINARY
collating sequence. Use of non-BINARY NLS_SORT
equality searches cannot use the primary key indexSet NLS_SORT
as follows:
Where to set the attribute | How the attribute is represented | Setting |
---|---|---|
C or Java programs or UNIX odbc.ini file |
NLS_SORT |
Specify the linguistic sort sequence or BINARY (default). |
Windows ODBC Data Source Administrator | NLS_SORT dropdown list | Specify the linguistic sort sequence or BINARY (default). |
The tables in this section list the supported values for the NLS_SORT
general connection attribute and the NLS_SORT
SQL function.
Basic name | Extended name |
---|---|
ARABIC |
- |
ARABIC_MATCH |
- |
ARABIC_ABJ_SORT |
- |
ARABIC_ABJ_MATCH |
- |
ASCII7 |
- |
AZERBAIJANI |
XAZERBAIJANI |
BENGALI |
- |
BIG5 |
- |
BINARY |
- |
BULGARIAN |
- |
CANADIAN FRENCH |
- |
CATALAN |
XCATALAN |
CROATIAN |
XCROATIAN |
CZECH |
XCZECH |
CZECH_PUNCTUATION |
XCZECH_PUNCTUATION |
DANISH |
XDANISH |
DUTCH |
XDUTCH |
EBCDIC |
- |
EEC_EURO |
- |
EEC_EUROPA3 |
- |
ESTONIAN |
- |
FINNISH |
- |
FRENCH |
XFRENCH |
GERMAN |
XGERMAN |
GERMAN_DIN |
XGERMAN_DIN |
GBK |
- |
GREEK |
- |
HEBREW |
- |
HKSCS |
- |
HUNGARIAN |
XHUNGARIAN |
ICELANDIC |
- |
INDONESIAN |
- |
ITALIAN |
- |
LATIN |
- |
LATVIAN |
- |
LITHUANIAN |
- |
MALAY |
- |
NORWEGIAN |
- |
POLISH |
- |
PUNCTUATION |
XPUNCTUATION |
ROMANIAN |
- |
RUSSIAN |
- |
SLOVAK |
XSLOVAK |
SLOVENIAN |
XSLOVENIAN |
SPANISH |
XSPANISH |
SWEDISH |
- |
SWISS |
XSWISS |
THAI_DICTIONARY |
- |
TURKISH |
XTURKISH |
UKRAINIAN |
- |
UNICODE_BINARY |
- |
VIETNAMESE |
- |
WEST_EUROPEAN |
XWEST_EUROPEAN |
Sort name | Description |
---|---|
CANADIAN_M |
Canadian French sort supports reverse secondary, special expanding characters. |
DANISH_M |
Danish sort supports sorting uppercase characters before lowercase characters. |
FRENCH_M |
French sort supports reverse sort for secondary. |
GENERIC_M |
Generic sorting order which is based on ISO14651 and Unicode canonical equivalence rules but excluding compatible equivalence rules. |
JAPANESE_M |
Japanese sort supports SJIS character set order and EUC characters which are not included in SJIS. |
KOREAN_M |
Korean sort Hangul characters are based on Unicode binary order. Hanja characters based on pronunciation order. All Hangul characters are before Hanja characters. |
SPANISH_M |
Traditional Spanish sort supports special contracting characters. |
THAI_M |
Thai sort supports swap characters for some vowels and consonants. |
SCHINESE_RADICAL_M |
Simplified Chinese sort is based on radical as primary order and number of strokes order as secondary order. |
SCHINESE_STROKE_M |
Simplified Chinese sort uses number of strokes as primary order and radical as secondary order. |
SCHINESE_PINYIN_M |
Simplified Chinese Pinyin sorting order. |
TCHINESE_RADICAL_M |
Traditional Chinese sort based on radical as primary order and number of strokes order as secondary order. |
TCHINESE_STROKE_M |
Traditional Chinese sort uses number of strokes as primary order and radical as secondary order. It supports supplementary characters. |
PL/SQL connection attributes are set by each connection and persist for the duration of the connection. These attributes control the behaviors of the database. PL/SQL first connection attributes are listed Table 1-5, "PL/SQL first connection attributes" and described in detail in this section.
This attribute determines whether PL/SQL is configured for the database.
Specifying PLSQL=1
enables PL/SQL use in the database. Specifying PLSQL=0
disables PL/SQL use in the database.
In TimesTen installations where PL/SQL support was enabled at installation time, the default is PLSQL=1
. Or PL/SQL may be enabled when the database is initially created, or at any first connect afterward. Once PL/SQL support is enabled in a database, you cannot disable it later.
Configuring PL/SQL support in a database results in the installation of several PL/SQL packages that are documented in Oracle TimesTen In-Memory Database PL/SQL Packages Reference.
Some things to be aware of when setting this attribute are:
If an application connects to a database that has PL/SQL enabled, and the application or odbc.ini
file specifies PLSQL=0
, TimesTen returns a warning.
If an application connects to a database that does not have PL/SQL enabled, and the application or odbc.ini
file specifies PLSQL=1
, what happens depends on whether this is a first connect or a subsequent one. At first connect, the database is configured to support PL/SQL. Otherwise, TimesTen returns an error.
If PLSQL=0
, all PL/SQL first and general connection attributes are ignored.
If PLSQL=0
, any attempt to change the value of a PL/SQL general connection attributes returns an error.
If PLSQL=1
, we recommend setting LockLevel
=0 for the connection. If database level locking is enabled, some PL/SQL internal functions cannot be performed. You can use the ttLockLevel
built-in procedure to selectively change to database-level locking only for those specific transactions that require it.
If PL/SQL support is enabled, the DDLCommitBehavior
must be the Oracle transactional commit behavior (value 0
).
When you enable PL/SQL (PLSQL=1
), there is both a fixed and per connection overhead allocated from the PL/SQL segment, even if you do not use PL/SQL. For details, see "PLSQL_MEMORY_SIZE".
Set PLSQL
as follows:
Where to set the attribute | How the attribute is represented | Setting |
---|---|---|
C or Java programs or UNIX odbc.ini file |
PLSQL |
0 - Indicates that PL/SQL is not enabled for the database.
|
Windows ODBC Data Source Administrator | PL/SQL Enabled check box | checked - Enables PL/SQL for the database.
unchecked - Indicates that PL/SQL is not enabled for the database. |
Use of PL/SQL requires a shared memory segment. 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.
This attribute determines the virtual address at which this shared memory segment is loaded into each process that uses the TimesTen "direct" drivers. This memory address must be identical in each process using TimesTen. You must specify the value as a hexadecimal address.
If PL/SQL use is enabled (PLSQL=1
) and you have not specified 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 on 32-bit x86 processors | 10000000 |
Linux on 64-bit x86 processors | 0000007fa0000000 |
32-bit AIX | c0000000 |
64-bit AIX | 06ffffff00000000 |
Solaris on 64-bit x86 processors | 0000007fa0000000 |
Solaris on 64-bit SPARC processors | ffffff0000000000 |
32-bit Windows | 5B8C0000 |
64-bit Windows | 000000005b8c0000 |
64-bit HP-UX | 0 |
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
.
Set PLSQL_MEMORY_ADDRESS
as follows:
Where to set the attribute | How the attribute is represented | Setting |
---|---|---|
C or Java programs or UNIX odbc.ini file |
PLSQL_MEMORY_ADDRESS |
A hexidecimal value that indicates the memory address for PL/SQL process. |
Windows ODBC Data Source Administrator | PL/SQL Memory Address field | A hexidecimal value that indicates the memory address for PL/SQL process. |
Use of PL/SQL requires a shared memory segment. This attribute determines the size in megabytes of the shared memory segment used by PL/SQL. All connections share this memory segment.
This shared memory contains recently-executed PL/SQL code, the 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.
Some things to consider when setting this attribute are:
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.
The default memory size is 32 MB on UNIX systems and 32 MB on Windows 32-bit systems. The minimum size is 2 MB, if PLSQL=1
. For most PL/SQL users, the default memory size should be an adequate amount of memory. For databases that make extensive use of PL/SQL, specify a larger memory size. If the memory space is exhausted, ORA-4031
errors may occur during PL/SQL execution.
The address of the memory segment is determined by the value of PLSQL_MEMORY_ADDRESS
.
When you enable PL/SQL (PLSQL=1
), there is both a fixed and per connection overhead allocated from the PL/SQL segment, even if you do not use PL/SQL. The minimum fixed memory allocated is approximately 1500 KB. Additionally, approximately 40 KB of memory is allocated per connection. Thus, you can compute an estimated minimum memory setting needed when enabling PL/SQL for PLSQL_MEMORY_SIZE
as 1500 KB plus (number_of_connections
* 40
). If the application uses PL/SQL, we recommend that you allocate twice the estimated minimum required memory for this segment. If the application does not use PL/SQL, you can allocate less than twice the estimated minimum required memory.
Set PLSQL_MEMORY_SIZE
as follows:
Where to set the attribute | How the attribute is represented | Setting |
---|---|---|
C or Java programs or UNIX odbc.ini file |
PLSQL_MEMORY_SIZE |
Specify a positive integer greater than 2 representing the size in MB of the shared memory segment in megabytes. The default size is 32 . |
Windows ODBC Data Source Administrator | PL/SQL Memory Size field | Specify a positive integer greater than 2 representing the size in MB of the shared memory segment in megabytes. The default size is 32 . |
PL/SQL general connection attributes are set by each connection and persist for the duration of the connection. These attributes control the behaviors of the database. PL/SQL general connection attributes are listed in Table 1-6, "PL/SQL general connection attributes" and described in detail in this section.
You can use the ALTER SESSION
statement, described in Oracle TimesTen In-Memory Database SQL Reference, to change PL/SQL parameters to override the values that are assigned to the PL/SQL general connection attributes at connection time.
PLSCOPE_SETTINGS
controls whether the PL/SQL compiler generates cross-reference information. Either all or no cross-references are generated.
Some things to consider when setting this attribute are:
The PLSCOPE_SETTINGS
connection attribute determines the initial value of this attribute within a session. The value may be modified by an ALTER SESSION
statement, described in Oracle TimesTen In-Memory Database SQL Reference. If the attribute is specified in an ALTER SESSION
statement in a database where PLSQL=0
, an error is returned. For example
ALTER SESSION SET PLSCOPE_STTINGS = 'IDENTIFIERS:ALL' ;
If this attribute is specified in a connection string or in the odbc.ini
file and the application is connecting to a database where PLSQL=0
, no error or warning results.
Note:
For more details on this attribute, see Oracle TimesTen In-Memory Database PL/SQL Developer's Guide.Set PLSCOPE_SETTINGS
as follows:
Where to set the attribute | How the attribute is represented | Setting |
---|---|---|
C or Java programs or UNIX odbc.ini file |
PLSCOPE_SETTINGS |
IDENTIFIERS:NONE (default)
|
Windows ODBC Data Source Administrator | PLScope settings pulldown list | IDENTIFIERS:NONE (default)
|
This attribute sets directives to control conditional compilation of PL/SQL units, which enables you to customize the functionality of a PL/SQL program depending on conditions that are checked. This is especially useful when applications may be deployed to multiple database environments. Possible uses include activating debugging or tracing features, or basing functionality on the version of the database.
Use this format:
PLSQL_CCFLAGS = 'v1:c1,v2:c2,...,vn:cn'
v1
has the form of an unquoted PL/SQL identifier. It is unrestricted and can be a reserved word or a keyword. The text is insensitive to case. Each one is known as a flag or flag name. Each vi
can occur multiple times in the string, each occurrence can have a different flag value, and the flag values can be of different kinds.
c1
is one of the following: a PL/SQL boolean literal, a PLS_INTEGER
literal, or the literal NULL
. The text is insensitive to case. Each one is known as a flag value and corresponds to a flag name.
Set PLSQL_CCFLAGS
as follows:
Where to set the attribute | How the attribute is represented | Setting |
---|---|---|
C or Java programs or UNIX odbc.ini file |
PLSQL_CCFLAGS |
'A string literal with this format:
Default: null |
Windows ODBC Data Source Administrator | PL/SQL CCFlags field | 'A string literal with this format:
Default: null |
You can use the ALTER SESSION
SQL statement, described in Oracle TimesTen In-Memory Database SQL Reference, to change this attribute within a session.
ALTER SESSION SET PLSQL_CCFLAGS = 'v1:c1,v2:c2,...,vn:cn';
This attribute specifies the maximum amount of process heap memory in megabytes that PL/SQL can use for the connection in which it is set.
Some things to consider when setting this attribute are:
PL/SQL does not allocate this memory until or unless it is needed. Many PL/SQL programs require only a small amount of memory. How you write your application can determine memory requirements. For example, using large VARRAYs
in PL/SQL code can require a lot of memory.
If you attempt to allocate more memory than allowed, TimesTen returns an error.
The value can be modified with the ALTER SESSION
statement, described in Oracle TimesTen In-Memory Database SQL Reference. For example:
ALTER SESSION SET PLSQL_CONN_MEM_LIMIT = 100;
See Oracle TimesTen In-Memory Database PL/SQL Developer's Guide for more information.
Set PLSQL_CONN_MEM_LIMIT
as follows:
Where to set the attribute | How the attribute is represented | Setting |
---|---|---|
C or Java programs or UNIX odbc.ini file |
PLSQL_CONN_MEM_LIMIT |
An integer value in MB. Default value is 100 . |
Windows ODBC Data Source Administrator | PL/SQL Connection Memory Limit field | An integer value in MB. Default value is 100 . |
This attribute specifies the optimization level to be used to compile PL/SQL library units. The higher the setting of this parameter, the more effort the compiler makes to optimize PL/SQL library units.
Some things to consider when setting this attribute are:
The PLSQL_OPTIMIZE_LEVEL
connection attribute determines the initial value of this attribute within a session. The value may be modified by an ALTER SESSION
statement, described in Oracle TimesTen In-Memory Database SQL Reference. If the attribute is specified in an ALTER SESSION
statement in a database where PLSQL=0
, an error is returned. For example:
ALTER SESSION SET PLSQL_OPTIMIZE_LEVEL = 2;
If this attribute is specified in a connection string or in the odbc.ini
file and the application is connecting to a database where PLSQL=0
, no error or warning results.
Set PLSQL_OPTIMIZE_LEVEL
as follows:
Where to set the attribute | How the attribute is represented | Setting |
---|---|---|
C or Java programs or UNIX odbc.ini file |
PLSQL_OPTIMIZE_LEVEL |
For details on the settings for this attribute, see Oracle TimesTen In-Memory Database PL/SQL Developer's Guide.
The default value is |
Windows ODBC Data Source Administrator | PL/SQL Optimization Level pulldown list | For details on the settings for this attribute, see Oracle TimesTen In-Memory Database PL/SQL Developer's Guide.
The default value is |
This attribute controls how long (in seconds) PL/SQL program units, including PL/SQL procedures, anonymous blocks and functions, are allowed to run before being automatically terminated.
This value may be modified with an ALTER SESSION
statement, described in Oracle TimesTen In-Memory Database SQL Reference. If this value is modified through ALTER SESSION
, the new value impacts any PL/SQL program units that are currently running. For example:
ALTER SESSION SET PLSQL_TIMEOUT = 10;
Notes:
If you are using PL/SQL, set the PLSQL_TIIMEOUT
value to a value that is at least 5 seconds less than TTC_TIMEOUT
.
The frequency with which PL/SQL programs check execution time against this timeout value is variable. It is possible for programs to run significantly longer than the timeout value before being terminated.
Set PLSQL_TIMEOUT
as follows:
Where to set the attribute | How the attribute is represented | Setting |
---|---|---|
C or Java programs or UNIX odbc.ini file |
PLSQL_TIMEOUT |
A positive integer representing the number of seconds for the timeout value.
A value of The default value is |
Windows ODBC Data Source Administrator | PL/SQL Timeout field | A positive integer representing the number of seconds for the timeout value.
A value of The default value is |
TimesTen Cache first connection attributes are used only when you are using the TimesTen Cache product. TimesTen Cache first connection attributes are listed in Table 1-7, "TimesTen Cache first connection attributes" and described in detail in this section.
Determines whether asynchronous writethrough propagation uses the PL/SQL execution method or SQL array execution method to apply changes to the Oracle database server.
By default, asynchronous writethrough (AWT) uses PL/SQL execution method, CacheAWTMethod=1
. AWT bundles all pending operations into a single PL/SQL collection that is sent to the Oracle database server to be executed. This method can improve AWT throughput when there are mixed transactions and network latency between TimesTen and the Oracle database server.
The SQL array execution to apply changes within TimesTen to the Oracle database works well when the same type of operation is repeated. For example, array execution is very efficient when a user does an update that affects several rows of the table. Updates are grouped together and sent to the Oracle database server in one batch.
PL/SQL execution method transparently falls back to array execution mode temporarily when it encounters one of the following:
A statement that is over 32761 bytes in length.
A statement that references a column of type BINARY FLOAT
, BINARY DOUBLE
and VARCHAR
of length greater than 4000 bytes.
Specify the SQL execution method, CacheAWTMethod=0
, if any AWT cache group contains a VARBINARY
column.
The SYSTEMSTATS
table contains information about the number of times the execution method temporarily falls back to SQL array execution.
Note:
Use the same AWT execution method on all TimesTen nodes in any active standby pair replication scheme.Set CacheAWTMethod
as follows:
Where to set the attribute | How the attribute is represented | Setting |
---|---|---|
C or Java programs or UNIX odbc.ini file |
CacheAWTMethod |
0 - Use SQL array execution method.
|
Windows ODBC Data Source Administrator | Cache AWT Method field | 0 - Use SQL array execution method.
|
TimesTen Cache connection attributes are used only when you are using the TimesTen Cache product. TimesTen Cache data store attributes are listed and described in detail in this section.
CacheAWTParallelism
indicates the number of threads that apply changes to the Oracle database. This attribute has a relationship to ReplicationParallelism
and ReplicationApplyOrdering
. The default is 1.
If you do not set this attribute or if you set it to the default value of 1, the number of threads that apply changes to the Oracle database is twice the setting for ReplicationParallelism
. If the CacheAWTParallelism
attribute is set to 1 or not set, the maximum allowable value for ReplicationParallelism
is 16
.
If both ReplicationParallelism
and CacheAWTParallelism
attributes are set, the value set in CacheAWTParallelism
configures the number of threads used for parallel propagation. The setting for CacheAWTParallelism
determines the number of apply threads for parallel propagation and the setting for ReplicationParallelism
determines the number of threads for parallel replication.
To learn more about parallel AWT caching, see "Configuring parallel propagation to Oracle Database tables" in the Oracle TimesTen Application-Tier Database Cache User's Guide.
Set CacheAWTParallelism
as follows:
Where to set the attribute | How the attribute is represented | Setting |
---|---|---|
C or Java programs or UNIX odbc.ini file |
CacheAWTParallelism |
n - An integer between 1 and 31 that indicates the number of threads that apply changes to the Oracle database. The default is 1 . |
Windows ODBC Data Source Administrator | Cache AWT Parallelism field | n - An integer between 1 and 31 that indicates the number of threads that apply changes to the Oracle database. The default is 1 . |
Enables or disables cache grid. The TimesTen database must be a member of a cache grid before you can create cache groups. The default is 1
(enabled).
Set CacheGridEnable
as follows:
Where to set the attribute | How the attribute is represented | Setting |
---|---|---|
C or Java programs or UNIX odbc.ini file |
CacheGridEnable |
0 - Cache groups can be defined outside of a cache grid.
|
Windows ODBC Data Source Administrator | Cache Grid Enable check box | unchecked - Cache groups can be defined outside of a cache grid.
checked (default) - All cache groups in the database must be defined as members of a cache grid. |
Specifies the number of seconds that an application waits for a message response from a remote member in a cache grid.
The maximum wait time includes the value of this attribute added to the value of LockWait
connection attribute.
For more information on caching data from an Oracle database in a TimesTen cache grid, see Oracle TimesTen Application-Tier Database Cache User's Guide.
Set CacheGridMsgWait
as follows:
Where to set the attribute | How the attribute is represented | Setting |
---|---|---|
C or Java programs or UNIX odbc.ini file |
CacheGridMsgWait |
Set to the number of seconds that TimesTen should wait for a cache grid message from a remote member. The default is 60 . |
Windows ODBC Data Source Administrator | Cache Grid Message Wait field | Set to the number of seconds that TimesTen should wait for a cache grid message from a remote member. The default is 60 . |
TimesTen Cache general connection attributes are used only when you are using the TimesTen Cache product. TimesTen Cache general connection attributes are listed in Table 1-9, "TimesTen Cache general connection attributes" and described in detail in this section.
This attribute enables or disables dynamic load of data from an Oracle database to a TimesTen dynamic cache group. By default, dynamic load of data from an Oracle database is enabled.
To enable or disable dynamic load at the statement level and temporarily override the setting of this attribute, set the DynamicLoadEnable
optimizer flag with the ttOptSetFlag
built-in procedure or using the statement level optimizer hint TT_DynamicLoadEnable
in a SQL statement.
Note:
The value of this attribute overrides the dynamic load behavior of all dynamic cache groups for the current connection to the database.Set DynamicLoadEnable
as follows:
Where to set the attribute | How the attribute is represented | Setting |
---|---|---|
C or Java programs or UNIX odbc.ini file |
DynamicLoadEnable |
0 - Disables dynamic load of data from an Oracle database to TimesTen dynamic cache groups for the current connection.
|
Windows ODBC Data Source Administrator | Dynamic Load Enable field | 0 - Disables dynamic load of data from an Oracle database to TimesTen dynamic cache groups for the current connection.
|
This attribute controls what happens when an application executes a SQL operation against a dynamic cache group and the SQL operation cannot use dynamic load.
With a value of 0, the SQL operation executes against whatever data is in the TimesTen cache tables and returns a result based on that data with no error indicated.
With a value of 1, any statement that cannot use dynamic load (even if it does not need dynamic load) fails with an error indicating that it is not dynamic load-compliant.
For more information on caching data from an Oracle database in a TimesTen cache group, see Oracle TimesTen Application-Tier Database Cache User's Guide.
Note:
To override the value of this attribute at the statement level, set theDynamicLoadErrorMode
optimizer flag with the ttOptSetFlag
built-in procedure or using the statement level optimizer hint TT_DynamicLoadErrorMode
in a SQL statement.
For details, see "Statement level optimizer hints" in the Oracle TimesTen In-Memory Database SQL Reference.
Set DynamicLoadErrorMode
as follows:
Where to set the attribute | How the attribute is represented | Setting |
---|---|---|
C or Java programs or UNIX odbc.ini file |
DynamicLoadErrorMode |
0 (default) - Statements execute against the cached data with no error.
|
Windows ODBC Data Source Administrator | DynamicLoadErrorMode field | 0 (default) - Statements execute against the cached data with no error.
|
The TimesTen Cache uses the OracleNetServiceName
attribute.
This attribute identifies the Service Name for the Oracle instance.
To cache Oracle database tables and enable communication with the Oracle database, you must specify an Oracle Service Name.
Set OracleNetServiceName
as follows:
Where to set the attribute | How the attribute is represented | Setting |
---|---|---|
C or Java programs or UNIX odbc.ini file |
OracleNetServiceName |
Character string specifying the Oracle Service Name that is to be used as the Oracle ID. |
Windows ODBC Data Source Administrator | OracleNetServiceName field | Character string specifying the Oracle Service Name that is to be used as the Oracle ID. |
The TimesTen Cache uses the OraclePWD
attribute.
The value of this attribute is the password for the user specified by UID
to connect to the Oracle database to perform cache operations.
This attribute must be set in the connection string. On Linux, suppose you have defined the following odbc.ini
file:
[myDSN] Datastore=/data/myDSN PermSize=128 DatabaseCharacterSet=AL32UTF8 ConnectionCharacterSet=AL32UTF8
Set OraclePWD
for user ttuser
by connecting to myDSN
as follows:
% ttisql Copyright (c) 1996-2011, Oracle. All rights reserved. Type ? or "help" for help, type "exit" to quit ttIsql. Command> connect "dsn=myDSN;OraclePWD=mypwd"; Connection successful: DSN=beta4;UID=ttuser;DataStore=/data/myDSN;DatabaseCharacterSet=AL32UTF8; ConnectionCharacterSet=AL32UTF8;PermSize=128;TypeMode=0; (Default setting AutoCommit=1) Command>
On Windows, set OraclePWD
in the connection string in the same way that it is set on Linux.
The TimesTen Cache uses the PassThrough
attribute.
It specifies which SQL statements are executed only in the cache database and which SQL statements are passed through to the Oracle database. For more information about the TimesTen Cache, see Oracle TimesTen Application-Tier Database Cache User's Guide and "CREATE CACHE GROUP" in Oracle TimesTen In-Memory Database SQL Reference.
The execution of a prepared PassThrough
command assumes that the schema of dependent objects in the Oracle database has not changed since the prepare. If the schema has changed the PassThrough
command may cause unexpected results from the Oracle database.
When passing SQL statements through to the Oracle database, use only TimesTen supported data types in column definitions. If the specified data type is not supported in TimesTen, the passthrough statement fails.
For information on changing the isolation level on the Oracle database connection, when using this attribute, see "Isolation".
Set PassThrough
as follows.
Where to set the attribute | How the attribute is represented | Setting |
---|---|---|
C or Java programs or UNIX odbc.ini file |
PassThrough |
0 (default) - SQL statements are executed only on TimesTen.
|
Windows ODBC Data Source Administrator | PassThrough List | 0 (default) - SQL statements are executed only on TimesTen.
|
Certain restrictions must be considered when using the passthrough feature. They include:
If the PassThrough
attribute is set so that a query must be executed in the Oracle database, the query is sent to the Oracle database without any changes. If the query uses a synonym for a table in a cache group, then a synonym with the same name must be defined for the corresponding Oracle database table for the query to be successful.
In the case that a SQL statement that uses TimesTen only syntax is passed through to the Oracle database, TimesTen returns an error message that indicates the syntax is not supported in the Oracle database.
Execution of a prepared passthrough command assumes that the schema of dependent objects in the Oracle database have not changed after the prepare. If the schema has changed, unexpected results can occur.
TimesTen does not include a cache invalidation feature. TimesTen does not verify that the cached tables are up to date. When a query is syntactically correct in TimesTen and the cache contains all the tables referenced in the query, the query is executed in TimesTen regardless of whether the cache is up to date.
The passthrough of Oracle INSERT
, UPDATE
, or DELETE
operations depends on the setting of the PassThrough
attribute as described in the table above. TimesTen Cache cannot detect INSERT
, UPDATE
and DELETE
operations that are hidden in a trigger or stored procedure. Therefore, TimesTen cannot enforce the passthrough rule on hidden operations.
You cannot pass PL/SQL blocks through to the Oracle database.
The effects of a passthrough INSERT
, UPDATE
, or DELETE
operation on a read-only cache group are only seen after the transaction is committed and after the next autorefresh operation is completed.
There is no mechanism to detect or block updates on an Oracle database table that is cached in a TimesTen synchronous writethrough cache group. Whether the updates are made by statements passed through the cache or from other Oracle database applications, the changes are never reflected in TimesTen Cache.
Oracle Call Interface (OCI) does not support a mechanism to describe the binding type of the input parameters. Ensure that your application supplies the correct SQL types for passthrough statements. The ODBC driver converts the C and SQL types and presents the converted data and the SQL type code to TimesTen. TimesTen presents the information to OCI. The length of the input binding values is restricted to 4000 for LONG
and LONG RAW
types.
At all passthrough levels, passthrough execution of DDL statements does not result in commits on the TimesTen side.
A transaction that contains operations that are replicated with RETURN TWOSAFE
cannot have a PassThrough
setting greater than 0
. If PassThrough
is greater than 0
, an error is returned and the transaction must be rolled back.
When PassThrough
is set to 0
, 1
, or 2
, the following behavior occurs when a dynamic load condition exists:
A dynamic load can occur for a SELECT
operation on cache tables in any dynamic cache group type.
A dynamic load for an INSERT
, UPDATE
, or DELETE
operation can only occur on cached tables with dynamic asynchronous or synchronous writethrough cache groups.
Refer to "SQL Statements" in Oracle TimesTen In-Memory Database SQL Reference for details about the INSERT
, UPDATE
, DELETE
, and SELECT
statements.
This attribute enables you to enable or disable the installation of Transparent Application Failover (TAF) and Fast Application Notification (FAN) callbacks when using Oracle Real Application Clusters (Oracle RAC) with TimesTen Cache.
For more information about TimesTen Cache, see Oracle TimesTen Application-Tier Database Cache User's Guide and "CREATE CACHE GROUP" in Oracle TimesTen In-Memory Database SQL Reference.
Set RACCallback
as follows:
Where to set the attribute | How the attribute is represented | Setting |
---|---|---|
C or Java programs or UNIX odbc.ini file |
RACCallback |
0 - Do not install TAF and FAN callbacks.
|
Windows ODBC Data Source Administrator | RACCallback check box | unchecked - Do not install TAF and FAN callbacks.
checked (default) - Install the TAF and FAN callbacks. |
TimesTen Client connection attributes are used only when you are connecting to a TimesTen server from a TimesTen client application. TimesTen Client connection attributes are listed in Table 1-10, "TimesTen Client connection attributes" and described in detail in this section.
In addition to the attributes listed in this section, some database attributes and general connection attributes are also available for client connections or impact the behavior of the connection. These attributes are:
To view the value of client attributes, use the ODBC function SQLGetConnectOption
. To learn more about this function see "Option support for SQLSetConnectOption and SQLGetConnectOption" section of the Oracle TimesTen In-Memory Database C Developer's Guide.
When connecting to a TimesTen database using the TimesTen Client and Server, the TimesTen Client requires the network address and the TCP port number of the computer running the TimesTen Server. As a convenience, TimesTen enables you to define a logical server name that contains the network address and port number pair.
If you specify anything other than a logical server name for the TTC_Server
attribute in the Client DSN definition, TimesTen Client assumes that the Server is running on the default TCP/IP port number. In such cases, if your Server is running on a port other than the default port, you must specify the port number in the ODBC connection string. For example:
"TTC_SERVER=server_host_name; TTC_SERVER_DSN=Server_DSN;TCP_PORT=server_port"
or
"DSN=Client_DSN;TCP_Port=server_port"
Set TCP_Port
as follows:
Where to set the attribute | How the attribute is represented | Setting |
---|---|---|
C or Java programs | TCP_Port |
Specify the port number where the Server is listening. |
Windows ODBC Data Source Administrator and UNIX odbc.ini file |
TimesTen does not support specifying this attribute directly in a UNIX odbc.ini file or in the Windows ODBC Data Source Administrator. Alternatively, TCP_Port can be defined in the logical server name. |
N/A |
TimesTen uses this attribute to specify the port number to use if an automatic failover occurs. See the description of TCP_Port
for details on setting the value of this attribute and associated attributes.
See Oracle TimesTen In-Memory Database Operations Guide for more information on automatic client failover.
Set TCP_Port2
as follows:
Where to set the attribute | How the attribute is represented | Setting |
---|---|---|
C or Java programs | TCP_Port2 |
Specify the failover port number where the Server should listen. |
Windows ODBC Data Source Administrator and UNIX odbc.ini file |
TimesTen does not support specifying this attribute directly in a UNIX odbc.ini file or in the Windows ODBC Data Source Administrator. Alternatively, TCP_Port can be defined in the logical server name. |
N/A |
Specifies a port range for the port that the automatic client failover thread listens on for failover notifications in an active/standby replication configuration. The failover configuration enables a client application to connect to a new active node automatically if there is a failure on the current node.
Specifying a port range helps accommodate firewalls between the client and server systems. By default, TimesTen uses a port chosen by the operating system.
Note:
Client failover is only supported when the client is part of an active/standby pair replication configurations.See Oracle TimesTen In-Memory Database Operations Guide for more information on automatic client failover.
Set TTC_FailoverPortRange
as follows:
Where to set the attribute | How the attribute is represented | Setting |
---|---|---|
C or Java programs or UNIX odbc.ini file |
TTC_FailoverPortRange |
Specify a lower value and an upper value for the port numbers in the format lowervalue — uppervalue . |
Windows ODBC Data Source Administrator | Failover Port Range field | Specify a lower value and an upper value for the port numbers in the format lowervalue — uppervalue . |
When connecting to a TimesTen database using the TimesTen Client and Server, the TimesTen Client requires the specification of the network address and TCP port number of the computer running the TimesTen Server. As a convenience, TimesTen enables you to define a logical server name that contains the network address and port number pair. If you specify anything other than a logical server name for this attribute, TimesTen Client assumes that the Server is running on the default TCP/IP port number. In such cases, if your Server is running on a port other than the default port, you must specify the port number in the ODBC connection string. For example:
"TTC_SERVER=server_host_name; TTC_SERVER_DSN=Server_DSN;TCP_PORT=server_port"
or:
"DSN=Client_DSN;TCP_Port=server_port"
Once the logical server name is defined, you can use that name as the value for the TTC_Server
attribute in a Client DSN. Multiple Client DSNs referencing the same computer that is running the TimesTen Server can use the same logical server name for the value of the TTC_Server
attribute instead of having to specify repeatedly the same network address and port number within each of the Client DSNs.
Note:
TimesTen recommends that you specify a logical server name for theTTC_Server
attribute. However, you can also specify a domain name server (DNS), host name or IP address for the TTC_Server
attribute. If you do not use a logical server name and the TimesTen Server is listening on a nondefault port number, you must provide the port number in the ODBC connection string. For example:
"TTC_SERVER=server_host_name;TTC_SERVER_DSN=Server_DSN; TCP_PORT=server_port"
or
"DSN=Client_DSN;TCP_Port=server_port"
Set TTC_Server
as follows:
Where to set the attribute | How the attribute is represented | Setting |
---|---|---|
C or Java programs or UNIX odbc.ini file |
TTC_Server |
Character string specifying the logical server. |
Windows ODBC Data Source Administrator | Server Name or Network Address field | Character string specifying the logical server. |
This attribute specifies the logical server name to use if an automatic failover occurs. See the description of TTC_Server
for details on setting the value of this attribute and associated attributes.
The value of this attribute can be the same as the value specified for TTC_Server
if it is a virtual IP address.
If the client has already failed over and has connected to TTC_Server2
and the connection fails, it connects to TTC_Server
. It alternately attempts to connect to TTC_Server
and TTC_Server2
until the TTC_TIMEOUT
attribute expires.
Note:
Client failover is only supported when the client is part of an active/standby pair replication configurations.See Oracle TimesTen In-Memory Database Operations Guide for more information on automatic client failover.
Set TTC_Server2
as follows:
Where to set the attribute | How the attribute is represented | Setting |
---|---|---|
C or Java programs or UNIX odbc.ini file |
TTC_Server2 |
Character string specifying the logical server to be used if an automatic failover occurs. |
Windows ODBC Data Source Administrator | Server Name or Network Address 2 field | Character string specifying the logical server to be used if an automatic failover occurs. |
The TTC_Server_DSN
attribute specifies a Server DSN on the computer running the TimesTen Server.
On Windows, Server DSNs are the set of TimesTen System DSNs that use the TimesTen Data Manager driver. Use the ODBC Data Source Administrator to define Server DSNs.
On UNIX, Server DSNs are defined in the /var/TimesTen/
instance
/sys.odbc.ini
file. More details on this topic can be found in the platform-specific sections.
Set TTC_Server_DSN
as follows:
Where to set the attribute | How the attribute is represented | Setting |
---|---|---|
C or Java programs or UNIX odbc.ini file |
TTC_Server_DSN |
Character string specifying the DSN that resides on the Server. |
Windows ODBC Data Source Administrator | Server DSN field | Character string specifying the DSN that resides on the Server. |
This attribute specifies the Server DSN on the computer running the TimesTen Server. This is the Server DSN to be used if an automatic failover occurs. See the description of TTC_Server_DSN
for details on setting the value of this attribute and associated attributes.
If a failover occurs, if the client cannot connect to TTC_Server_DSN
or loses the connection to the DSN, it attempts to connect to TTC_Server_DSN2
.
Note:
Client failover is only supported when the client is part of an active/standby pair replication configurations.See Oracle TimesTen In-Memory Database Operations Guide for more information on automatic client failover.
Set TTC_Server_DSN2
as follows:
Where to set the attribute | How the attribute is represented | Setting |
---|---|---|
C or Java programs or UNIX ODBC .INI file |
TTC_Server_DSN2 |
Character string specifying the DSN that resides on the Server to be used if an automatic failover occurs. |
Windows ODBC Data Source Administrator | Server DSN2 field | Character string specifying the DSN that resides on the Server to be used if an automatic failover occurs. |
The TTC_Timeout
attribute sets a maximum time limit, in seconds, for a network operation that is completed by using the TimesTen Client and Server. The TTC_Timeout
attribute also determines the maximum number of seconds a TimesTen Client application waits for the result from the corresponding TimesTen Server process before timing out.
The operating systemselect()
call on the client side of a CLIENT/SERVER connection uses the value of TTC_TIMEOUT
. The SQLExecute()
and OCIStmtExecute()
functions do not use the value of this attribute.
A value of 0 indicates that client/server operations should not timeout. Setting of this attribute is optional. If this attribute is not set, the default timeout period is 60 seconds. The maximum timeout period is 99,999 seconds. Upon timeout, the operation is interrupted, the Client application receives a timeout error and the connection is terminated. For example, if the Client application is running long queries, you may want to increase the timeout interval.
For active standby pair failover scenarios, the minimum value is 60 seconds.
If you are using PL/SQL, set the PLSQL_TIMEOUT
value to a value that is at least 5 seconds less than TTC_TIMEOUT
.
The query timeout can be set using the SQLSetConnectOption
ODBC call before a connection is established to the database using either the SQLConnect
or SQLDriverConnect
ODBC calls. Alternatively, the query timeout can be set by calling either the SQLSetConnectOption
or SQLSetStmtOption
ODBC calls after a connection is established to the database.
When the query timeout is set before establishing a connection to the database, the client driver does not know the network timeout value at that point. Hence, later, at connect time, the client driver silently sets the query timeout to a value slightly smaller than the network timeout value if the following are true:
The network timeout value is greater than 0.
The query timeout value was 0, or greater than or equal to the network timeout value.
The timeout value can be set after establishing a connection by calling the ttIsql clienttimeout
command. When the query timeout is set after establishing a connection to the database, the client driver returns an error if the network timeout value is greater than 0, and the query timeout value greater than or equal to the network timeout value. The SQLState
is set to S1000.
This attribute is not supported when shared memory is used for Client/Server inter-process communication. If set, TimesTen ignores the attribute.
Set TTC_Timeout
as follows.
Where to set the attribute | How the attribute is represented | Setting |
---|---|---|
C or Java programs or UNIX ODBC .INI file |
TTC_Timeout |
A value between 0 and 99999 that represents the number of seconds that the TimesTen Client waits for a connection before timing out. (The default value is 60 .) In an active standby pair failover scenario, the minimum value is 60. |
Windows ODBC Data Source Administrator | Timeout Interval field | A value between 0 and 99999 that represents the number of seconds that the TimesTen Client waits for a connection before timing out. (The default value is 60 .) In an active standby pair failover scenario, the minimum value is 60. |
Server connection attributes are specified in the Server DSN only and are read at first connection. See "Defining Server DSNs on a TimesTen Server system" in Oracle TimesTen In-Memory Database Operations Guide. Use these attributes to set the number of connections to a TimesTen server, the number of servers for each DSN and the size of each connection to the server. These attributes allow you to specify multiple client connections to a single Server. By default, TimesTen creates only one connection to a Server per child process.
Note:
These attributes must be specified in the DSN. If these attributes are specified in a connection string, TimesTen ignores them and their values.There are also TimesTen main daemon options that can specify multiple Server connections. In the case that both the daemon options and these attributes have been specified, the value of the attributes takes precedence.
Server connection attributes are listed in Table 1-11, "TimesTen Server connection attributes" and described in detail in this section.
The MaxConnsPerServer
attribute sets the maximum number of concurrent connections to the server which the DSN references.
If you want to support many connections to the Server, you must ensure that the per-process file descriptor limit for the UID
that TimesTen is being run as is set to a value somewhat more than the number of concurrent child servers that are active. This is the number of anticipated concurrent client connections divided by MaxConnsPerServer
.
The value of this attribute takes precedence over the setting of the value of the -maxConnsPerServer
option in the ttendaemon.options
file. For details, see "Specifying multiple connections to the TimesTen Server" in Oracle TimesTen In-Memory Database Operations Guide.
For limits on the maximum number of connections to a TimesTen database, see Chapter 4, "System Limits".
Only a user with operating system privileges on the system DSN in which this attribute is defined can change the value of this attribute to a value other than the one currently in effect.
Set MaxConnsPerServer
as follows:
Where to set the attribute | How the attribute is represented | Setting |
---|---|---|
C or Java programs or UNIX odbc.ini file |
MaxConnsPerServer |
A value between 1 and 2047. The default is 1 . |
Windows ODBC Data Source Administrator | Maximum Connections Per Server Process field | A value between 1 and 2047. The default is 1 . |
The ServersPerDSN
attribute specifies the number of child server processes for a particular server DSN that will use round-robin connection distribution.This attribute only has any effect if the TimesTen server is configured to operate in multithreaded mode (MaxConnsPerServer > 1
). If ServersPerDSN
is set to 1 then the first MaxConnsPerServer
client connections to the server DSN will be assigned to one child server process, the next MaxConnsPerServer
connections to a second child server process and so on.If ServersPerDSN
is set to N
where N > 1
then the first N * MaxConnsPerServer
client connections to the server DSN are distributed in round robin fashion over N
child server processes. If additional client connections beyond N
* MaxConnsPerServer
are opened to the same server DSN then those connections are assigned to new child server processes sequentially as for the case when ServersPerDSN=1
.If this attribute is set in a server DSN definition then it will override, for that server DSN only, any value specified for the -serversPerDSN
daemon option (specified in the ttendaemon.options
file). If neither -serversPerDSN
nor ServersPerDSN
are configured then TimesTen uses the default value of 1
. For further details, see "Specifying multiple connections to the TimesTen Server" in Oracle TimesTen In-Memory Database Operations Guide.
Only a user with operating system privileges on the system DSN in which this attribute is defined can change the value of this attribute to a value other than the one currently in effect.
Set ServersPerDSN
as follows:
Where to set the attribute | How the attribute is represented | Setting |
---|---|---|
C or Java programs or UNIX odbc.ini file |
ServersPerDSN |
A value between 1 and 2047. The default is 1 . |
Windows ODBC Data Source Administrator | Server Processes Per DSN field | A value between 1 and 2047. The default is 1 . |
The ServerStackSize
attribute value determines the size of the stack on the Server for each connection. The value of this attribute is only meaningful if the value of MaxConnsPerServer
is greater than one. If there is only one connection per Server, the child server uses the process' main stack. It is also platform-dependent, as defined in the setting below.
This value of this attribute takes precedence over the setting of the -serverStackSize
option in the ttendaemon.options
file. For details, see "Specifying multiple connections to the TimesTen Server" in Oracle TimesTen In-Memory Database Operations Guide.
Changes to TimesTen Server settings do not occur until the TimesTen server is restarted. To restart the Server, use the command ttDaemonAdmin -restartserver
.
Only a user with operating system privileges on the system DSN in which this attribute is defined can change the value of this attribute to a value other than the one currently in effect.
Set ServerStackSize
as follows:
Where to set the attribute | How the attribute is represented | Setting |
---|---|---|
C or Java programs or UNIX odbc.ini file |
ServerStackSize |
Valid values depend on the platform. The default is 128KB for 32-bit platforms and 256KB for 64-bit platforms.
If the
else the minimum is 0 You generally should not need to set the |
Windows ODBC Data Source Administrator | Server Stack Size field | Valid values depend on the platform. The default is 128KB for 32-bit platforms and 256KB for 64-bit platforms.
You generally should not need to set the |