Oracle® TimesTen In-Memory Database Reference 11g Release 2 (11.2.2) Part Number E21643-10 |
|
|
PDF · Mobi · ePub |
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 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, each attribute is described 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 |
|
The directory where transaction log files are stored. |
Database directory |
|
Specifies that disk space for the database should be preallocated when creating the database. |
0 (False) |
|
Starts user-specified parallel replication. |
0 (Starts automatic parallel replication) |
|
Specifies the number of tracks available for user-defined parallel replication. |
1 |
|
Specifies that the database is not saved to disk. |
0 (False) |
|
The type mode for the database. |
0 (Oracle Type Mode) |
Table 1-2 First connection attributes
Name | Description | Default |
---|---|---|
Specifies that the first connection creates the database if it does not exist. |
1 (True) |
|
Controls the frequency in seconds that TimesTen performs a background checkpoint. |
600 |
|
Controls the amount of data in megabytes that collects in the log between background checkpoints. |
0 (Off) |
|
Controls the maximum rate at which data should be written to disk during a checkpoint operation. |
0 (Unlimited rate) |
|
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. |
0 (Connection disallowed) |
|
Determines whether the first connection to a database should proceed if TimesTen recovery encounters a defective log record. |
1 (Continues after log is truncated) |
|
The size of the internal log buffer in MB. |
64 |
|
The number of log buffer strands. |
4 |
|
The transaction log file size in MB. |
64 |
|
Controls the method used by TimesTen to write and sync log data to transaction log files. |
1 (Write data to transaction log files using buffered writes. Use explicit sync operations as needed to sync log data to disk) |
|
Specifies that unneeded transaction log files are deleted during a checkpoint operation. |
1 (True) |
|
Allows applications that connect to a shared database to specify whether the real memory should be locked during database loading. |
0 (Do not acquire a memory lock) |
|
Specifies that the existing database should be overwritten with a new one when a connection is attempted. |
0 (False) |
|
The size in MB for the permanent partition of the database. |
32 |
|
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. |
1 |
|
The number of threads used to rebuild indexes during recovery. |
'1 |
|
The size in MB for the temporary partition of the database. |
The default size is determined from the |
Table 1-3 General connection attributes
Name | Description | Default |
---|---|---|
Specifies whether there is a symbolic name for the data source. |
The process name |
|
Controls transactional commit behavior in relation to DDL. |
0 (Oracle behavior) |
|
Determines whether a table is included in an active standby pair replication scheme at table creation time when the |
|
|
Enables replication of DDL (Data Definition Language) statements in an active standby replication scheme. |
2 (Replication of objects enabled) |
|
Specifies whether diagnostic messages are generated. |
1 (Messages are generated) |
|
Determines whether applications use TimesTen or Oracle parameter binding for duplicate occurrences of a parameter in a SQL statement. |
0 (Oracle-style binding) |
|
Specifies that commit operations should write log records to disk. |
0 (Records not written to disk) |
|
Specifies whether the isolation level is read committed or serializable. |
1 (Read committed) |
|
Specifies whether the connection should use row-level locking (value = 0) or database-level locking (value = 1). |
0 (Row-level locking) |
|
Allows an application to configure the lock wait interval for the connection. |
10 seconds |
|
Specifies that value used for the LogPurge attribute should match those of current connections. |
0 (False) |
|
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. |
0 (On) |
|
See "UID and PWD". |
Specify the password that corresponds with the specified UID. When caching Oracle data, 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. |
0 (No warning is returned) |
|
Assigns a connection to a replication track. |
None |
|
Specifies the time limit in seconds within which the database should execute SQL statements. |
0 (No timeout) |
|
The threshold at which TimesTen returns a warning and throws an SNMP trap when the temporary partition of the database is low in memory. |
90% |
|
See "UID and PWD". |
Specify a user name that is defined on the server. When caching Oracle data, 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. |
1 |
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 |
0 (False) |
|
The collating sequence to use for linguistic comparisons. |
|
Table 1-5 PL/SQL first connection attributes
Name | Description | Default |
---|---|---|
Determines whether PL/SQL is enabled. |
1 (PL/SQL is enabled) |
|
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. |
100 |
|
The optimization level that is used to compile PL/SQL library units. |
2 |
|
The number of seconds a PL/SQL procedure can run before being automatically terminated. |
30 seconds |
Table 1-7 IMDB Cache first connection attributes
Name | Description | Default |
---|---|---|
Enables the AWT propagation method to be used on Oracle tables. |
0 ( |
Table 1-8 IMDB Cache database attributes
Name | Description | Default |
---|---|---|
Indicates the number of threads that should be used to apply changes to the Oracle database. |
1 |
|
Enables cache grid. |
1 (Enabled) |
|
Sets the maximum message wait time. |
60 seconds |
Table 1-9 IMDB Cache general connection attributes
Name | Description | Default |
---|---|---|
Enables or disables transparent load of Oracle data to dynamic cache groups. |
1 (Dynamic cache group load is enabled) |
|
Determines if an error message is returned upon a transparent load failure. |
0 (Errors are not returned) |
|
The Oracle Service Name of the Oracle 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 Oracle for execution. |
0 |
|
Specifies whether to enable or disable the installation of Application Failover (TAF) and Fast Application Notification (FAN) callbacks. |
1 (Install the callbacks) |
Table 1-10 Client connection attributes
Table 1-11 Server connection attributes
Name | Description | Default |
---|---|---|
The maximum number of concurrent connections a child server process can handle. |
1 |
|
The desired number of server processes for the DSN. |
1 |
|
The size in KB of the thread stack for each connection. |
128 KB (32-bit systems) 256KB (64-bit systems) |
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 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. This information is used by the ODBC driver manager and by TimesTen.
Only the instance administrator can change the value of this attribute.
Set Data Source Name
as follows:
Where to set the attribute | How the attribute is represented | Setting |
---|---|---|
C or Java programs or UNIX ODBC.INI file |
DSN |
A name that describes the DSN. |
Windows ODBC Data Source Administrator | Data Source Name field | A name that describes the DSN. |
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
.
You can use environment variables in the specification of the database path and name.
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.Only the instance administrator can change the value of this attribute.
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 character set names that can be used as a value for this attribute, 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.
Only the instance administrator can change the value of this attribute.
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 |
Name | Description |
---|---|
TIMESTEN8 |
TimesTen legacy character semantics |
Name | Description |
---|---|
AL16UTF16 |
Unicode 4.0 UTF-16 Universal character set. This is the implicit TimesTen national character set. |
AL32UTF8 |
Unicode 4.0 UTF-8 Universal character set |
UTF8 |
Unicode 3.0 UTF-8 Universal character set, CESU-8 compliant |
Optionally, set this attribute to help you identify the Data Source Name (DSN
) and its attributes.
Only the instance administrator can change the value of this attribute.
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 LogDir
attribute specifies the directory where database logs reside. Specifying this attribute allows you to place the transaction log files on a different I/O path from the database checkpoint files. This may improve throughput.
You can use environment variables in the specification of the transaction log file path name. For example, you can specify $HOME/AdminDS
for the location of the database. See "Using environment variables in database path names" in Oracle TimesTen In-Memory Database Operations Guide for more information.
Only the instance administrator can change the value of this attribute.
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.
Only the instance administrator can change the value of this attribute.
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.Enables automatic or user-define track-based parallel replication when used with the ReplicationParallelism
attribute. By default, this attribute is set to enable automatic parallel replication.
Both automatic and user-defined parallel replication are available for active standby pair and regular replication schemes. In parallel replication multiple transmitters send from the master to multiple receivers on the subscriber.
All data stores in the replication scheme must use the same setting.
For applications that 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 using user-defined parallel replication: you can specify 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 user-defined automatic parallel replication, see the Oracle TimesTen In-Memory Database Replication Guide.
This attribute is also sets parallel propagation for AWT cache groups. By default, this attribute enables parallel propagation of updates to Oracle. To learn more about parallel AWT caching, see "Configuring parallel propagation to Oracle tables" in the Oracle In-Memory Database Cache User's Guide.
Only the instance administrator can change the value of this attribute.
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. (default)
1 -Specifies user-defined track-based parallel replication. |
Windows ODBC Data Source Administrator | Replication Apply Ordering check box | unchecked - Specifies automatic parallel replication. (default)
checked - Specifies user-defined track-based 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.
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 of the replication tracks can remain empty.
Synchronous replication, including TWOSAFE
and RETURN RECEIPT
replication, is not supported with user-specified parallel replication.
To learn more about parallel replication, see "Configuring parallel replication" in the Oracle TimesTen In-Memory Database Replication Guide.
Only the instance administrator can change the value of this attribute.
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. |
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.Only the instance administrator can change the value of this attribute.
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 permanent database.
|
Windows ODBC Data Source Administrator | Temporary check box | unchecked (default) - Creates permanent database.
checked - Creates temporary 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. We recommend that you use the default setting, which is Oracle type mode.
When caching Oracle data 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.
Only the instance administrator can change the value of this attribute.
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.
1 - TimesTen 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.
1 - TimesTen 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.
No privilege is required to change the value of this attribute.
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 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. If left unspecified (or empty in the Windows ODBC Data Source Administrator), the stored setting is used. To turn the attribute off, you must explicitly specify a value of 0.
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.
Only the instance administrator can change the value of this attribute.
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. Default is 600. To specify the default or "existing" value, leave the value empty. A value of 0 means that checkpoint frequency is not considered when scheduling checkpoints. |
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. Default is 600. To specify the default or "existing" value, leave the field empty. A value of 0 means that checkpoint frequency is not considered when scheduling checkpoints. |
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. If left unspecified (or empty in the Windows ODBC Data Source Administrator), the stored setting is used. To turn the attribute off, you must explicitly specify a value of 0.
Only the instance administrator can change the value of this attribute.
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. To specify the default or "existing" value, leave the value empty. A value of 0 means that log volume is not considered when scheduling checkpoints. |
Windows ODBC Data Source Administrator | Ckpt LogVolume field | Specify the amount of data in megabytes that can accumulate in the transaction log file between background checkpoints. The default is 0. To specify the default or "existing" value, leave the field empty. A value of 0 means that log volume is not considered when scheduling checkpoints. |
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.
This rate is used by all background checkpoints and by checkpoints initiated by the ttCkpt
and ttCkptBlocking
built-in procedures. 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), the stored setting is used. 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.
Only the instance administrator can change the value of this attribute.
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 0 indicates that the rate should not be limited. This is the default. |
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 0 indicates that the rate should not be limited. This is the default. |
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 the default number of semaphores should be used. The maximum number of connections allowed 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.
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.Only the instance administrator can change the value of this attribute.
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 the lesser of 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.
No privilege is required to change the value of this 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.
Only the instance administrator can change the value of this attribute.
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
.
Only the instance administrator can change the value of this attribute.
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, the existing value stored in the database is used.If not set and the database is being created, the default value of 64 is used. On 32-bit systems, the maximum log file is 1042 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, the existing value stored in the database is used.If not set and the database is being created, the default value of 64 is used. On 32-bit systems, the maximum log file is 1042 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.
Only the instance administrator can change the value of this attribute.
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 1MB. 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.
A value of zero indicates that either the default transaction log file size should be used if the database does not exist, or that the transaction log file size in effect for the most recent connection should be used if the database does exist.
Only the instance administrator can change the value of this attribute.
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 1042 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 1042 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.
Only the instance administrator can change the value of this attribute.
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, the contents of the transaction log files are written 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.
See also MatchLogOpts
.
Only the instance administrator can change the value of this attribute.
Set LogPurge
as follows:
On Solaris, Linux and Windows 64-bit systems, TimesTen allows 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 sub-system 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
.
Only the instance administrator can change the value of this attribute.
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 be root
to set MemoryLock
to 1 or 2. Setting MemoryLock
to 3 or 4 enables use of Solaris "intimate shared memory".
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, as long as 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"). Overwrite
is ignored 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) - Does not overwrite 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 that the default size should be used. 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.
The ttMigrate
and ttDestroy
utilities can also be used to change the Permanent Data Size, when appropriate.
Only the instance administrator can change the value of this attribute.
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.
Only the instance administrator can change the value of this attribute.
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 1. |
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 1. |
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.
Only the instance administrator can change the value of 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. |
For a progress report on the recovery process, see the rebuild messages in the support log.
Set the number of threads low enough to leave sufficient resources on the server for other services/processes.
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 64MB, 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.
Only the instance administrator can change the value of this attribute.
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 temporary partition of the database, in megabytes. Minimum size is 32 MB on all platforms. |
Windows ODBC Data Source Administrator | Temporary Data Size field | n - Size of temporary partition of the database, in megabytes. 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.
This attribute is also available as a Client connection attribute.
This attribute allows you to attach a symbolic name to any database connection. Connection names are unique within a process.
The symbolic name is used to help identify the connection in various TimesTen 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.
No privilege is required to change the value of this attribute.
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 DDL (Data Definition Language) 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, users procedures, indexes, etc.)
TRUNCATE
GRANT
and REVOKE
No privilege is required to change the value of this attribute.
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 INSERTs
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 is included in an active standby pair replication scheme at table creation time when the DDLReplicationLevel
connection attribute is set to 2.
The value may be modified by an ALTER SESSION
statement, for example:
ALTER SESSION SET DDL_Replication_Action='EXCLUDE';
Values set by ALTER SESSION
override the value set by this attribute.
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.
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" on 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 "Making DDL changes in an active standby pair" in the Oracle TimesTen In-Memory Database Replication Guide.
ADMIN
privilege is required if the value of this attribute is INCLUDE
.
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 is created, it is automatically added to the active standby pair scheme.
|
Windows ODBC Data Source Administrator | DDLReplicationAction field | INCLUDE (default) - When a table is created, it is automatically added to the active standby pair scheme.
|
Enables replication of the following DDL (Data Definition Language) statements in an active standby replication scheme:
DDL statements include:
CREATE
or DROP INDEX
CREATE
or DROP SYNONYM
CREATE
or DROP TABLE
(including global temporary tables but not CREATE TABLE AS SELECT
)
The value of this attribute may be modified by an ALTER SESSION
statement, for example:
ALTER SESSION SET DDL_Replication_Level=1;
Values set by ALTER SESSION
override the value set by this attribute.
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 is included in an active standby pair replication scheme at the time of table creation, use the DDLReplicationAction
connection 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 "Making DDL changes in an active standby pair" in the Oracle TimesTen In-Memory Database Replication Guide.
No privilege is required to change the value of this attribute.
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.
|
Allows 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.
No privilege is required to change the value of this attribute.
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 - No diagnostics messages are generated.
|
Windows ODBC Data Source Administrator | Diagnostics field | 0 - No diagnostics messages are generated.
|
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 assigns a number to each parameter occurrence without regard to name duplication. An Oracle 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.
No privilege is required to change the value of this attribute.
Set DuplicateBindMode
as follows:
When using Oracle Call Interface, DuplicateBindMode
must be set to 0.
When PLSQL
is set to 1 and DuplicateBindMode
is set to 1, PL/SQL programs may not issue SQL statements containing duplicate parameter names.
By default, DurableCommits
is set to 0. This means that a log record is written 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, a log record is written 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.
No privilege is required to change the value of this attribute.
Set DurableCommits
as follows:
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. For details, see Oracle TimesTen In-Memory Database SQL Reference.
CREATE CACHE GROUP
, ALTER CACHE GROUP
and DROP CACHE GROUP
statements are not supported in serializable isolation mode.
If the passthrough or the propagate IMDB 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 connection. For example on a connection to the DSN repdb1_1121
:
Call ttIsql
and connect to the DSN
with PassThrough level 3:
% ttIsql; Command> connect "dsn=repdb1_1121;passtrhough=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;
No privilege is required to change the value of this attribute.
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 tables, you must set row-level locking. In order to CREATE
, DROP
, or ALTER
a user, you can only use row-level locking and thus, the Locklevel 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.
ADMIN
privilege is required if the value of this attribute is 1.
Set LockLevel
as follows:
Allows 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 a large number of 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
.
No privilege is required to change the value of this attribute.
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 - Seconds to wait for locking conflict resolution before timing out. Default is 10 seconds. |
Windows ODBC Data Source Administrator | LockWait field | s - Seconds to wait for locking conflict resolution before timing out. 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.
Note:
IfMatchLogOpts
is set to True for the first connector, an error is generated and the connection fails. Because of this, use the attribute with caution.No privilege is required to change the value of this attribute.
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 - 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. See "ttWarnOnLowMemory". Also see "Diagnostics through SNMP Traps" in Oracle TimesTen In-Memory Database Error Messages and SNMP Traps.
No privilege is required to change the value of this attribute.
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 warning should be issued. Default is 90% |
Windows ODBC Data Source Administrator | Low Memory Warning Thresholds for Permanent Data field | p - Percentage at which warning should be issued. 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.
No privilege is required to change the value of this attribute.
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. This means that 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 allows 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 allows 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.
No privilege is required to change the value of this attribute.
If PWD
and PWDCrypt
are both supplied, the PWD
value is used. See "UID and PWD".
The PWD
is not stored anywhere in the TimesTen system.
Set PWDCrypt
as follows:
Where to set the attribute | How the attribute is represented | Setting |
---|---|---|
C or Java programs or UNIX ODBC.INI file |
PWDCrypt |
Enter the value generated by the ttuser utility. |
Windows ODBC Data Source Administrator | PWDCrypt field | Enter the value generated by the ttuser utility. |
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.
No privilege is required to change the value of this attribute.
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 non-negative integer. Default is 0 and indicates that TimesTen does not return a warning. |
Windows ODBC Data Source Administrator | QueryThreshold (secs) field | A non-negative integer. Default is 0 and indicates that TimesTen does not return a warning. |
For user defined replication, assigns a connection to a replication track. All transactions issued by the connection are assigned to this track, unless the track is altered.
To start user-specified 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
to 1.
The TTREP.REPPEERS
system table Track_ID
column shows the track associated with the connection.
You can use the ALTER SESSION SQL
statement to assign or change the value of this attribute within a session.
No privilege is required to change the value of this attribute.
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. |
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 IMDB Cache operations that are being processed on Oracle. This includes passthrough statements, flushing, manual loading, manual refreshing, synchronous writethrough, and propagating.
No privilege is required to change the value of this attribute.
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
No privilege is required to change the value of this attribute.
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 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 tables, PWD
specifies the TimesTen password while OraclePWD
specifies the Oracle password.
No privilege is required to change the values of these attributes.
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.
No privilege is required to change the value of this attribute.
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 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 character set names that can be used as a value for this attribute, see "Supported character sets".
No privilege is required to change the value of this attribute.
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 , except when the database character set is TIMESTEN8 . |
Windows ODBC Data Source Administrator | Connection CharacterSet list | The default value for ConnectionCharacterSet is US7ASCII , except when the database character set is TIMESTEN8 . |
The NLS_LENGTH_SEMANTICS
attribute is used 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.
No privilege is required to change the value of this attribute.
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, except when using the TIMESTEN8
character set.
No privilege is required to change the value of this attribute.
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.
1 - Errors are reported when there is a data loss during character type conversion. |
Windows ODBC Data Source Administrator | NLS_NCHAR_ CONV_EXCP checkbox | 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 indexNo privilege is required to change the value of this attribute.
Set 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.
On platforms where PL/SQL is supported, and in TimesTen installations where PL/SQL support was enabled at installation time, the default is PLSQL
=1. In other environments the default is PLSQL
=0.
PL/SQL may be enabled when the database is initially created, or at any first connect afterwards. However, once PL/SQL support is enabled in a database, you cannot disable it later.
Configuring PL/SQL support in a database results in the creation of several "built-in" PL/SQL packages and procedures that are defined in Oracle TimesTen In-Memory Database PL/SQL Developer's Guide.
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).
Only the instance administrator can change the value of this attribute.
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 checkbox | 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 apace.
The platform specific default memory addresses are:
Operating system | Address |
---|---|
32-bit Linux | 10000000 |
64-bit Linux | 0000007fa0000000 |
32-bit AIX | c0000000 |
64-bit AIX | 06ffffff00000000 |
32-bit Solaris | 10000000 |
64-bit Solaris | ffffff0000000000 |
32-bit Windows | 5B8C0000 |
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 value for PLSQL_MEMORY_ADDRESS
.
The value of this attribute is stored persistently by TimesTen. This allows the attribute value to be properly 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
.
Only the instance administrator can change the value of this attribute.
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, which is shared by all connections.
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. This allows the attribute value to be properly 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 23 MB on Windows 32-bit systems. The minimum size is 2MB, 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
.
For more information on how to calculate the size for PLSQL_MEMORY_SIZE
, see "Calculate shared memory size for PL/SQL runtime" in Oracle TimesTen In-Memory Database Operations Guide.
Only the instance administrator can change the value of this attribute.
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 of the shared memory segment in megabytes. The default size is 32 MB. |
Windows ODBC Data Source Administrator | PL/SQL Memory Size field | Specify a positive integer greater than 2 representing the size of the shared memory segment in megabytes. The default size is 23 MB. |
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 to change PL/SQL parameters to override the values that are assigned to the PL/SQL general connection attributes at connection time. For details, see Oracle TimesTen In-Memory Database SQL Reference.
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. If the attribute is specified in an ALTER SESSION
statement in a database where PLSQL
=0, an error is returned.
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.No privilege is required to change the value of this attribute.
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 can be used to set directives to control conditional compilation of PL/SQL units, which allows 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.
No privilege is required to change the value of this attribute.
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 to change this attribute within a session.
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.
See Oracle TimesTen In-Memory Database PL/SQL Developer's Guide for more information.
No privilege is required to change the value of this attribute.
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 100MB. |
Windows ODBC Data Source Administrator | PL/SQL Connection Memory Limit field | An integer value in MB. Default value is 100MB. |
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. If the attribute is specified in an ALTER SESSION
statement in a database where PLSQL=0
, an error is returned.
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.No privilege is required to change the value of this attribute.
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 2. |
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 2. |
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. If this value is modified through ALTER SESSION
, the new value impacts any PL/SQL program units that are currently running.
Note:
If you are using PL/SQL, set thePLSQL_TIIMEOUT
value to a value that is at least 5 seconds less than TTC_TIMEOUT
.No privilege is required to change the value of this attribute.
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 0 means that there is no timeout limit. The default value is 30 seconds. |
Windows ODBC Data Source Administrator | PL/SQL Timeout field | A positive integer representing the number of seconds for the timeout value.
A value of 0 means that there is no timeout limit. The default value is 30 seconds. |
IMDB Cache first connection attributes are used only when you are using the IMDB Cache product. IMDB Cache first connection attributes are listed in Table 1-7, "IMDB Cache first connection attributes" and described in detail in this section.
Determines whether PL/SQL execution method or SQL array execution method is used for Asynchronous Writethrough propagation to apply changes to the Oracle 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 server to be executed. This method can improve AWT throughput when there are mixed transactions and network latency between TimesTen and the Oracle server.CacheAWTMethod=0
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 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.Only the instance administrator can change the value of this attribute.
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.
|
IMDB Cache connection attributes are used only when you are using the IMDB Cache product. IMDB Cache data store attributes are listed and described in detail in this section.
CacheAwtParallelism
indicates the number of threads that should be used to 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 Oracle is twice the setting for ReplicationParallelism
. In this case, ReplicationParallelism
can only be set to 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 tables" in the Oracle In-Memory Database Cache User's Guide.
Only the instance administrator can change the value of this attribute.
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 should be used to apply changes to 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 should be used to apply changes to Oracle database. The default is 1. |
Determines whether cache grid is enabled or disabled. The TimesTen database must be a member of a cache grid before you can create cache groups. The default is 1
(enabled).
Only the instance administrator can change the value of this attribute.
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 Oracle data in a TimesTen cache grid, see Oracle In-Memory Database Cache User's Guide.
No privilege is required to change the value of this attribute.
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 seconds. |
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 seconds. |
IMDB Cache general connection attributes are used only when you are using the IMDB Cache product. IMDB Cache general connection attributes are listed in Table 1-9, "IMDB Cache general connection attributes" and described in detail in this section.
This attribute enables or disables dynamic load of Oracle data to a TimesTen dynamic cache group. By default, dynamic load of Oracle data 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.
Note:
The value of this attribute overrides the dynamic load behavior of all dynamic cache groups for the current connection to the database.No privilege is required to change the value of this attribute.
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 Oracle data to TimesTen dynamic cache groups for the current connection.
|
Windows ODBC Data Source Administrator | Dynamic Load Enable field | 0 - Disables dynamic load of Oracle data 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 Oracle data in a TimesTen cache group, see Oracle In-Memory 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.No privilege is required to change the value of this attribute.
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 OracleNetServiceName
attribute is used with the IMDB Cache.
This attribute identifies the Service Name for the Oracle instance
To cache Oracle tables and enable communication with Oracle, you must specify an Oracle Service Name.
No privilege is required to change the value of this attribute.
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. |
This attribute is used with IMDB Cache. It identifies the password for the user specified by UID
to connect to the Oracle database to perform cache operations.
No privilege is required to set the value of this attribute.
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.
This attribute is used with the IMDB Cache.
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 IMDB Cache, see Oracle In-Memory 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 Oracle, 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 connection, when using this attribute, see "Isolation".
No privilege is required to change the value of this attribute.
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 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 Oracle.
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
and DELETE
operations depends on the setting of the PassThrough attribute as described in the table above. IMDB 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 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 applications, the changes are never reflected in IMDB 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.
This attribute allows 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 IMDB Cache.
For more information about IMDB Cache, see Oracle In-Memory Database Cache User's Guide and "CREATE CACHE GROUP" in Oracle TimesTen In-Memory Database SQL Reference.
No privilege is required to change the value of this attribute.
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, "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 SQLGetConnectOptions. To learn more about this function see "Option support for SQLSetConnectOption and SQLGetConnectOptions" 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 allows 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"
No privilege is required to change the value of this attribute.
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 |
This attribute is used 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.
No privilege is required to change the value of this attribute.
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 allows 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.
No privilege is required to change the value of this attribute.
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 allows 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, it can be used as the value for the TTC_Server attribute in a Client DSN. Therefore, 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 non-default 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"
No privilege is required to change the value of this attribute.
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 is used to specify 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.
No privilege is required to change the value of this attribute.
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.
No privilege is required to change the value of this attribute.
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 is used to specify 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.
No privilege is required to change the value of this attribute.
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 value of TTC_TIMEOUT
is used in the OS select()
call on the client side of a C/S connection. It is not used by SQLExecute()
or OCIStmtExecute()
.
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
.
For certain queries, the client application may also set the SQL_QUERY_TIMEOUT
ODBC statement option. The TimesTen Client ODBC Driver requires that SQL_QUERY_TIMEOUT
must be less than TTC_TIMEOUT
, unless the network timeout is set to 0. In that case, the network operation does not 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.
No privilege is required to change the value of this 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" in Oracle TimesTen In-Memory Database Operations Guide. The attributes are used 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 be used to 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, "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 make sure 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-maxConnsPerDSN
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".
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 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 DSNs that can connect to a Server DSN at any given time.
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.
This value of this attribute takes precedence over the setting of the value of the -serversPerDSN
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.
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 0 If the
r1.rlim_cur /1024 else 4096 The default is 128KB for 32-bit platforms and 256KB for 64-bit platforms. |
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.
If the
else 0 If the
r1.rlim_cur /1024 else 4096 |