SYMPTOM
Statistics logging does not get initiated in Strategy Intelligence Server 9.x. The following errors are seen in the DSSErrors during Strategy Intelligence Server 9.x. startup.
2013-06-07 08:12:53.927+02:00 Statistics schema version from Database: 9.3.1.
Internal Version No: 8
2013-06-07 08:12:53.941+02:00 Catalog Get Columns failed. Disconnected.
Error type: Unknown exception. Odbc operation attempted: SQLColumns. Connection String: DSN=MSTRSTAT_TEST;UID=MSTR;HOST=mst01;PORT=1521;SN=ms01;
2013-06-07 08:12:58.195+02:00 Find target process dead while waiting for reply
2013-06-07 08:12:58.271+02:00 Unknown failed. Unable to connect. Error type: System call error. Error communicating with connection process. Find target process dead while waiting for reply. SQL Statement: select PROP_VAL from MSI_STATS_PROP where PROP_NAME = 'MAXPRANSLENGTH'.
2013-06-07 08:12:58.367+02:00 MsiStatisticsMgr::Unable to execute columns.
2013-06-07 08:12:58.452+02:00 Init() : Failed to add statistics tables. Return code = -2147467259
It's seen that a successful connection can be established to the Statistics database from Strategy DB Query Tool. However, the database classes process spawned by the Strategy Intelligence Server (during startup) seems to terminate unexpectedly. This is indicated in the system logs and also by the presence of core files corresponding to the M8MulPrc_32 process.
CAUSEThe NLS_CHARACTERSET of the Oracle database is: WE8ISO8859P9. However, in the odbc.ini file, the IANAAppCodePage value is set to a default value of 111. The IANAAppCodePage value should be set as per the character set of the database.
WE8ISO8859P9 is a non-unicode West European and Turkish character set. A valid IANAAppCodePage value is required for non-unicode character sets in Oracle. Not having a correct value can lead to conversion errors which can lead to unexpected errors as in this case. Following is an excerpt from DataDirect's reference guide(
http://www.datadirect.com/resources/odbc/unicode/odbc-driver.html):
The Driver Manager must use client code page information (Active Code Page on Windows and the IANAAppCodePage attribute on UNIX/Linux) to determine which ANSI code page to use for the conversions. The Active Code Page or IANAAppCodePage must match the database default character encoding. If not, conversion errors are possible ACTIONDepending on the character set being used on the database, set the appropriate value for the IANAAppCodePage. For example, for NLS_CHARACTERSET=WE8ISO8859P9, the IANAAppCodePage value must be set to 12. Refer to the following link for a list of supported code page values
http://media.datadirect.com/download/docs/odbc/allodbc/index.html#page/reference/rfi1359986381932.html For additional character sets not found in the link above, refer to following:
http://www.iana.org/assignments/character-sets/character-sets.xhtml