We are trying to support sort based on Turkish Character set. When we defined in ORACLE 11.2 parameters NLS_SORT= TURKISH_CI there is a phrase in log states that no other NLS_SORT is supported than BINARY_CI :
NLS_SORT = BINARY_CI
NLS_COMP = LINGUISTIC
Any help is depply appriciated.
sm.log db outputs:
7861( 7919) 10/14/2011 12:39:59 RTE I Oracle server settings for language, territory and character set: AMERICAN_AMERICA.AL32UTF8 (AL16UTF16)
7861( 7919) 10/14/2011 12:39:59 RTE I OCI Client settings for language, territory and character set: TURKISH_TURKEY.AL32UTF8 (UTF16)
7861( 7919) 10/14/2011 12:39:59 RTE I Oracle instance setting for NLS_SORT is set to BINARY_CI
7861( 7919) 10/14/2011 12:39:59 RTE I Oracle instance setting for NLS_COMP is set to LINGUISTIC
This is likely due to the way that Service Manager implemented case-insensitivity support for Oracle.
Excerpt from the SM Case-Insensitive Oracle document:
You must meet the following requirements in order to use case-insensitive Oracle with Service Manager:
1. NLS_SORT=BINARY_CI and NLS_COMP=LINGUISTIC must be set in the Oracle Instance level.
– If these values are set as given above, Service Manager will issue an ALTER SESSION statement to match the NLS_SORT and NLS_COMP session parameter with the NLS_SORT and NLS_COMP instance parameter.
– If these values are not set or are different from the given values, Service Manager will treat it as case-sensitive Oracle and issue an ALTER SESSION statement to modify those parameters to be NLS_SORT=BINARY and NLS_COMP=BINARY.
This ensures that all Service Manager server processes within a horizontal or vertical scaling group have consistent Oracle case-sensitivity settings.